Skip to content
Snippets Groups Projects
Commit d437a0e7 authored by rswindell's avatar rswindell
Browse files

set_socket_options() now supports option names and comments that don't begin on

column 0 and now ignores blank lines.
parent 07ea6de5
Branches
Tags
No related merge requests found
...@@ -79,6 +79,7 @@ int DLLCALL set_socket_options(scfg_t* cfg, SOCKET sock, char* error) ...@@ -79,6 +79,7 @@ int DLLCALL set_socket_options(scfg_t* cfg, SOCKET sock, char* error)
char cfgfile[MAX_PATH+1]; char cfgfile[MAX_PATH+1];
char str[256]; char str[256];
char* p; char* p;
char* name;
BYTE* vp; BYTE* vp;
FILE* fp; FILE* fp;
int option; int option;
...@@ -104,12 +105,14 @@ int DLLCALL set_socket_options(scfg_t* cfg, SOCKET sock, char* error) ...@@ -104,12 +105,14 @@ int DLLCALL set_socket_options(scfg_t* cfg, SOCKET sock, char* error)
while(!feof(fp)) { while(!feof(fp)) {
if(!fgets(str,sizeof(str),fp)) if(!fgets(str,sizeof(str),fp))
break; break;
if(str[0]==';') name=str;
while(*name && *name<=' ') name++;
if(*name==';' || *name==0) /* blank line or comment */
continue; continue;
p=str; p=name;
while(*p && *p>' ') p++; while(*p && *p>' ') p++;
if(*p) *(p++)=0; if(*p) *(p++)=0;
option=sockopt(str); option=sockopt(name);
while(*p && *p<=' ') p++; while(*p && *p<=' ') p++;
len=sizeof(value); len=sizeof(value);
value=strtol(p,NULL,0); value=strtol(p,NULL,0);
...@@ -135,13 +138,13 @@ int DLLCALL set_socket_options(scfg_t* cfg, SOCKET sock, char* error) ...@@ -135,13 +138,13 @@ int DLLCALL set_socket_options(scfg_t* cfg, SOCKET sock, char* error)
result=setsockopt(sock,SOL_SOCKET,option,vp,len); result=setsockopt(sock,SOL_SOCKET,option,vp,len);
if(result) { if(result) {
sprintf(error,"%d setting socket option (%s, %d) to %d" sprintf(error,"%d setting socket option (%s, %d) to %d"
,ERROR_VALUE, str, option, value); ,ERROR_VALUE, name, option, value);
break; break;
} }
#if 0 #if 0
len = sizeof(value); len = sizeof(value);
getsockopt(sock,SOL_SOCKET,option,(void*)&value,&len); getsockopt(sock,SOL_SOCKET,option,(void*)&value,&len);
lprintf("%04d socket option: %s set to %d", sock, str, value); lprintf("%04d socket option: %s set to %d", sock, name, value);
#endif #endif
} }
fclose(fp); fclose(fp);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment