static int ftp_send_command(FTPContext *s, const char *command,
                            const int response_codes[], char **response)
{
    int err;
    ff_dlog(s, "%s", command);
    if (response)
        *response = NULL;
    if ((err = ffurl_write(s->conn_control, command, strlen(command))) < 0)
        return err;
    if (!err)
        return -1;
    /* return status */
    if (response_codes) {
        return ftp_status(s, response, response_codes);
    }
    return 0;
}
static int ftp_send_command(FTPContext *s, const char *command,
                            const int response_codes[], char **response)
{
    int err;
    ff_dlog(s, "%s", command);
    if (response)
        *response = NULL;
    if ((err = ffurl_write(s->conn_control, command, strlen(command))) < 0)
        return err;
    if (!err)
        return -1;
    
    if (response_codes) {
        return ftp_status(s, response, response_codes);
    }
    return 0;
}
static int FUNC_0(FTPContext *VAR_0, const char *VAR_1,
                            const int VAR_2[], char **VAR_3)
{
    int VAR_4;
    ff_dlog(VAR_0, "%VAR_0", VAR_1);
    if (VAR_3)
        *VAR_3 = NULL;
    if ((VAR_4 = ffurl_write(VAR_0->conn_control, VAR_1, strlen(VAR_1))) < 0)
        return VAR_4;
    if (!VAR_4)
        return -1;
    
    if (VAR_2) {
        return ftp_status(VAR_0, VAR_3, VAR_2);
    }
    return 0;
}
static int FUNC_0(FTPContext *VAR_0, const char *VAR_1,
const int VAR_2[], char **VAR_3)
{ int VAR_4; ff_dlog(VAR_0, "%VAR_0", VAR_1); if (VAR_3)
*VAR_3 = NULL; if ((VAR_4 = ffurl_write(VAR_0->conn_control, VAR_1, strlen(VAR_1))) < 0)
return VAR_4; if (!VAR_4)
return -1; if (VAR_2) { return ftp_status(VAR_0, VAR_3, VAR_2); } return 0; }