From 3e3ca63912cb1babcb738c4cac30c986e3f9302b Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Thu, 23 Dec 2004 22:28:03 +0000 Subject: [PATCH] Support ctrl/<host>.ini in addition to ctrl/<host.domain>.ini in sbbs_get_ini_fname(). --- src/sbbs3/sbbs_ini.c | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/src/sbbs3/sbbs_ini.c b/src/sbbs3/sbbs_ini.c index 8fe84caa16..367553efa6 100644 --- a/src/sbbs3/sbbs_ini.c +++ b/src/sbbs3/sbbs_ini.c @@ -62,10 +62,13 @@ static const char* strBindRetryDelay="BindRetryDelay"; void sbbs_get_ini_fname(char* ini_file, char* ctrl_dir, char* pHostName) { - char host_name[128]; - char path[MAX_PATH+1]; + char host_name[128]; + char path[MAX_PATH+1]; + char* p; - if(pHostName==NULL) { + if(pHostName!=NULL) + SAFECOPY(host_name,pHostName); + else { #if defined(_WINSOCKAPI_) WSADATA WSAData; WSAStartup(MAKEWORD(1,1), &WSAData); /* req'd for gethostname */ @@ -74,17 +77,24 @@ void sbbs_get_ini_fname(char* ini_file, char* ctrl_dir, char* pHostName) #if defined(_WINSOCKAPI_) WSACleanup(); #endif - pHostName=host_name; } SAFECOPY(path,ctrl_dir); backslash(path); - sprintf(ini_file,"%s%s.ini",path,pHostName); + sprintf(ini_file,"%s%s.ini",path,host_name); + if(fexistcase(ini_file)) + return; + if((p=strchr(host_name,'.'))!=NULL) { + *p=0; + sprintf(ini_file,"%s%s.ini",path,host_name); + if(fexistcase(ini_file)) + return; + } #if defined(__unix__) && defined(PREFIX) - if(!fexistcase(ini_file)) - sprintf(ini_file,PREFIX"/etc/sbbs.ini"); + sprintf(ini_file,PREFIX"/etc/sbbs.ini"); + if(fexistcase(ini_file)) + return; #endif - if(!fexistcase(ini_file)) - sprintf(ini_file,"%ssbbs.ini",path); + sprintf(ini_file,"%ssbbs.ini",path); } static void read_ini_globals(FILE* fp, global_startup_t* global) -- GitLab