Esempio n. 1
0
int init_connection(Tox *m)
{
    if (linecnt > 0) /* already loaded serverlist */
        return init_connection_helper(m, rand() % linecnt) ? 0 : 4;

    /* only once:
     * - load the serverlist
     * - connect to "everyone" inside
     */
    if (!init_connection_serverlist_loaded) {
        init_connection_serverlist_loaded = 1;
        int res = serverlist_load();
        if (res)
            return res;

        if (!linecnt)
            return 4;

        res = 6;
        int linenumber;
        for(linenumber = 0; linenumber < linecnt; linenumber++)
            if (init_connection_helper(m, linenumber))
                res = 0;

        return res;
    }

    /* empty serverlist file */
    return 5;
}
Esempio n. 2
0
File: main.c Progetto: stqism/toxic
int init_connection(Tox *m)
{
    if (linecnt > 0) /* already loaded nodelist */
        return init_connection_helper(m, rand() % linecnt) ? 0 : 3;

    /* only once:
     * - load the nodelist
     * - connect to "everyone" inside
     */
    if (!srvlist_loaded) {
        srvlist_loaded = true;
        int res = nodelist_load(PACKAGE_DATADIR "/DHTnodes");

        if (linecnt < 1)
            return res;

        res = 3;
        int i;
        int n = MIN(NUM_INIT_NODES, linecnt);

        for(i = 0; i < n; ++i) {
            if (init_connection_helper(m, rand() % linecnt))
                res = 0;
        }

        return res;
    }

    /* empty nodelist file */
    return 4;
}
Esempio n. 3
0
int init_connection(Tox *m)
{
    if (toxNodes.lines > 0) { /* already loaded nodelist */
        init_connection_helper(m, rand() % toxNodes.lines);
        return 0;
    }

    /* only once:
     * - load the nodelist
     * - connect to "everyone" inside
     */
    if (!srvlist_loaded) {
        srvlist_loaded = true;
        int res;

        if (!arg_opts.nodes_path[0])
            res = load_nodelist(PACKAGE_DATADIR "/DHTnodes");
        else
            res = load_nodelist(arg_opts.nodes_path);

        if (res != 0)
            return res;

        res = 3;
        int i;
        int n = MIN(NUM_INIT_NODES, toxNodes.lines);

        for (i = 0; i < n; ++i) {
            if (init_connection_helper(m, rand() % toxNodes.lines) == 0)
                res = 0;
        }

        return res;
    }

    /* empty nodelist file */
    return 4;
}