char *gimme (char *string, char *lookmeup) { char *p,*p1; static char my_return[256]; p = strstr(string,lookmeup); p += strlen(lookmeup) + 1; p1 = strstr(p,"\\"); strncpy(my_return,p,p1-p); return my_return; } struct serverinfo DealWithServerInfo (char *rawinfo) { srv.maxclients = atoi(gimme(rawinfo,"maxclients"); srv.hostname = gimme(rawinfo,"hostname"); srv.deathmatch=atoi(gimme(rawinfo,"deathmatch"; srv.map = gimme(rawinfo,"map"); srv.status = gimme(rawinfo,"status"); return srv; }