Beispiel #1
0
void set_node(const char *name, const char *addr, int port) {
    static nodeid_t nid = 0;
    nid++;
    char *ip = gethostip(addr);
    set_nid_sender(nid, ip, port);
    set_gid_nid(1, nid);
    
    node_info_t ninfo;
    ninfo.nid = nid;
    ninfo.port = port;
    SAFE_ASSERT(strlen(name) + 1 < 100);
    SAFE_ASSERT(strlen(ip) + 1 < 100);
    strcpy(ninfo.name, name);
    strcpy(ninfo.ip, ip);
    mpr_hash_set(ht_node_info_, name, strlen(name) + 1, &ninfo, sizeof(node_info_t));
    
    *(nodeid_t *)apr_array_push(arr_nodes_) = nid;
    LOG_INFO("node added. name:%s, id:%" PRIu64", addr: %s, port: %d", 
        name, nid, addr, port);
    free(ip);
}
Beispiel #2
0
void server_reg(server_t *svr, msgid_t msgid, void* fun) {
    LOG_TRACE("server regisger function, msg type:%x", (int32_t)msgid);
    SAFE_ASSERT(fun != NULL);
    mpr_hash_set(svr->comm->ht, &msgid, SZ_MSGID, 
		     &fun, sizeof(void*));
}
Beispiel #3
0
void client_reg(client_t *cli, msgid_t msgid, void* fun) {
    LOG_TRACE("client regisger function, %x", fun);
    mpr_hash_set(cli->comm->ht, &msgid, SZ_MSGID, &fun, sizeof(void*)); 
}