Changeset 39 in Main for trunk/Server/config.c


Ignore:
Timestamp:
Sep 17, 2024, 9:20:48 PM (2 months ago)
Author:
Nishi
Message:

custom config

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Server/config.c

    r33 r39  
    296296                                                }
    297297                                        } else {
     298                                                stop = 1;
    298299                                                if(r[0] != NULL) {
    299                                                         cm_log("Config", "Unknown directive `%s' at line %d", r[0], ln);
    300                                                 }
    301                                                 stop = 1;
     300                                                        int argc;
     301                                                        for(argc = 0; r[argc] != NULL; argc++)
     302                                                                ;
     303                                                        stop = 0;
     304                                                        int i;
     305                                                        bool called = false;
     306                                                        struct tw_tool tools;
     307                                                        tw_init_tools(&tools);
     308                                                        for(i = 0; i < config.module_count; i++) {
     309                                                                tw_mod_config_t mod_config = (tw_mod_config_t)tw_module_symbol(config.modules[i], "mod_config");
     310                                                                int resp;
     311                                                                if(mod_config != NULL && (resp = mod_config(&tools, r, argc)) == TW_CONFIG_PARSED) {
     312                                                                        called = true;
     313                                                                        break;
     314                                                                }
     315                                                                if(resp == TW_CONFIG_ERROR) {
     316                                                                        stop = 1;
     317                                                                        called = true;
     318                                                                        break;
     319                                                                }
     320                                                        }
     321                                                        if(!called) {
     322                                                                cm_log("Config", "Unknown directive `%s' at line %d", r[0], ln);
     323                                                                stop = 1;
     324                                                        }
     325                                                }
    302326                                        }
    303327                                        for(i = 0; r[i] != NULL; i++) free(r[i]);
Note: See TracChangeset for help on using the changeset viewer.