int unix_listen(const char *str, char *ostr, int olen)

{

    QemuOpts *opts;

    char *path, *optstr;

    int sock, len;



    opts = qemu_opts_create(&dummy_opts, NULL, 0);



    optstr = strchr(str, ',');

    if (optstr) {

        len = optstr - str;

        if (len) {

            path = g_malloc(len+1);

            snprintf(path, len+1, "%.*s", len, str);

            qemu_opt_set(opts, "path", path);

            g_free(path);

        }

    } else {

        qemu_opt_set(opts, "path", str);

    }



    sock = unix_listen_opts(opts);



    if (sock != -1 && ostr)

        snprintf(ostr, olen, "%s%s", qemu_opt_get(opts, "path"), optstr ? optstr : "");

    qemu_opts_del(opts);

    return sock;

}

int unix_listen(const char *str, char *ostr, int olen)

{

    QemuOpts *opts;

    char *path, *optstr;

    int sock, len;



    opts = qemu_opts_create(&dummy_opts, NULL, 0);



    optstr = strchr(str, ',');

    if (optstr) {

        len = optstr - str;

        if (len) {

            path = g_malloc(len+1);

            snprintf(path, len+1, "%.*s", len, str);

            qemu_opt_set(opts, "path", path);

            g_free(path);

        }

    } else {

        qemu_opt_set(opts, "path", str);

    }



    sock = unix_listen_opts(opts);



    if (sock != -1 && ostr)

        snprintf(ostr, olen, "%s%s", qemu_opt_get(opts, "path"), optstr ? optstr : "");

    qemu_opts_del(opts);

    return sock;

}

    opts = qemu_opts_create(&dummy_opts, NULL, 0);     opts = qemu_opts_create(&dummy_opts, NULL, 0);     opts = qemu_opts_create(&dummy_opts, NULL, 0);     opts = qemu_opts_create(&dummy_opts, NULL, 0);
int FUNC_0(const char *VAR_0, char *VAR_1, int VAR_2)

{

    QemuOpts *opts;

    char *VAR_3, *VAR_4;

    int VAR_5, VAR_6;



    opts = qemu_opts_create(&dummy_opts, NULL, 0);



    VAR_4 = strchr(VAR_0, ',');

    if (VAR_4) {

        VAR_6 = VAR_4 - VAR_0;

        if (VAR_6) {

            VAR_3 = g_malloc(VAR_6+1);

            snprintf(VAR_3, VAR_6+1, "%.*s", VAR_6, VAR_0);

            qemu_opt_set(opts, "VAR_3", VAR_3);

            g_free(VAR_3);

        }

    } else {

        qemu_opt_set(opts, "VAR_3", VAR_0);

    }



    VAR_5 = unix_listen_opts(opts);



    if (VAR_5 != -1 && VAR_1)

        snprintf(VAR_1, VAR_2, "%s%s", qemu_opt_get(opts, "VAR_3"), VAR_4 ? VAR_4 : "");

    qemu_opts_del(opts);

    return VAR_5;

}

int FUNC_0(const char *VAR_0, char *VAR_1, int VAR_2)
{ QemuOpts *opts; char *VAR_3, *VAR_4; int VAR_5, VAR_6; opts = qemu_opts_create(&dummy_opts, NULL, 0); VAR_4 = strchr(VAR_0, ','); if (VAR_4) { VAR_6 = VAR_4 - VAR_0; if (VAR_6) { VAR_3 = g_malloc(VAR_6+1); snprintf(VAR_3, VAR_6+1, "%.*s", VAR_6, VAR_0); qemu_opt_set(opts, "VAR_3", VAR_3); g_free(VAR_3); } } else { qemu_opt_set(opts, "VAR_3", VAR_0); } VAR_5 = unix_listen_opts(opts); if (VAR_5 != -1 && VAR_1)
snprintf(VAR_1, VAR_2, "%s%s", qemu_opt_get(opts, "VAR_3"), VAR_4 ? VAR_4 : ""); qemu_opts_del(opts); return VAR_5; }