| | 364 | | static SERVER_SETUP_REC *server_setup_read(CONFIG_NODE *node) |
| | 365 | | { |
| | 366 | | SERVER_SETUP_REC *rec; |
| | 367 | | CHATNET_REC *chatnetrec; |
| | 368 | | char *server, *chatnet, *family; |
| | 369 | | int port; |
| | 370 | | |
| | 371 | | g_return_val_if_fail(node != NULL, NULL);
|
| | 372 | | |
| | 373 | | server = config_node_get_str(node, "address", NULL);
|
| | 374 | | if (server == NULL)
|
| | 375 | | return NULL;
|
| | 376 | | |
| | 377 | | port = config_node_get_int(node, "port", 0); |
| | 378 | | if (server_setup_find_port(server, port) != NULL) {
|
| | 379 | | |
| | 380 | | |
| | 381 | | return NULL;
|
| | 382 | | } |
| | 383 | | |
| | 384 | | rec = NULL;
|
| | 385 | | chatnet = config_node_get_str(node, "chatnet", NULL);
|
| | 386 | | |
| | 387 | | chatnetrec = chatnet == NULL ? NULL : chatnet_find(chatnet);
|
| | 388 | | if (chatnetrec == NULL && chatnet != NULL) {
|
| | 389 | | |
| | 390 | | chatnetrec = chat_protocol_get_default()->create_chatnet(); |
| | 391 | | chatnetrec->chat_type = chat_protocol_get_default()->id; |
| | 392 | | chatnetrec->name = g_strdup(chatnet); |
| | 393 | | chatnet_create(chatnetrec); |
| | 394 | | } |
| | 395 | | |
| | 396 | | family = config_node_get_str(node, "family", ""); |
| | 397 | | |
| | 398 | | rec = CHAT_PROTOCOL(chatnetrec)->create_server_setup();
|
| | 399 | | rec->type = module_get_uniq_id("SERVER SETUP", 0); |