All pastes #905201 Raw Edit

Stuff

public c v1 · immutable
·published 2008-02-15 17:05 UTC
rendered paste body
void G_admin_parse_ip( int *ipnum, int *net, char *ip ){	char tempIp[21];	char *tptr;	char newIp[21];	int int1;	int int2;	int int3;	int int4;	Q_strncpyz( tempIp, ip, sizeof( tempIp ) );	if (strlen(tempIp) == 0) // blank ip, don't ban anyone.	{		int1 = int2 = int3 = int4 = (int) 0;		*net = (int) 32;	}	else	{		tptr = strtok(tempIp, ".");		if (tptr == NULL)		{			int1 = int2 = int3 = int4 = (int) 0;				*net = (int) 32;		}		else		{			int1 = atoi(tptr);				tptr = strtok(NULL, ".");			if (tptr == NULL)			{				int2 = int3 = int4 = (int) 0;				*net = (int) 8;			}			else			{				int2 = atoi(tptr);				tptr = strtok(NULL, ".");				if (tptr == NULL)				{					int3 = int4 = (int) 0;					*net = (int) 16;				}				else				{					int3 = atoi(tptr);					tptr = strtok(NULL, "/");					if (tptr == NULL)					{						int4 = (int) 0;						*net = (int) 24;					}					else					{						int4 = atoi(tptr);						tptr = strtok(NULL, "/");						if (tptr == NULL)						{							*net = (int) 32;						}						else						{							*net = atoi(tptr);						}					}				}			}		}  }  *ipnum = (int) (int1<<24) + (int2<<16) + (int3<<8) + (int4);  if (!(*net == 32))	{		Com_sprintf( newIp, sizeof(*newIp)+10, "%i.%i.%i.%i/%i", int1, int2, int3, int4, *net );	}	else	{		Com_sprintf( newIp, sizeof(*newIp)+10, "%i.%i.%i.%i", int1, int2, int3, int4 );	}	ip = newIp;  return;}