mirror of
https://github.com/xcat2/xNBA.git
synced 2025-01-18 21:43:14 +00:00
inet_aton doesn't overwrite the IP address unless it is valid.
This commit is contained in:
parent
55ae308821
commit
903ddd9878
@ -146,9 +146,8 @@ int strcasecmp(const char *a, const char *b)
|
||||
/**************************************************************************
|
||||
INET_ATON - Convert an ascii x.x.x.x to binary form
|
||||
**************************************************************************/
|
||||
int inet_aton(const char *start, in_addr *i)
|
||||
{
|
||||
const char *p = start;
|
||||
int inet_aton ( const char *cp, struct in_addr *inp ) {
|
||||
const char *p = cp;
|
||||
const char *digits_start;
|
||||
unsigned long ip = 0;
|
||||
unsigned long val;
|
||||
@ -160,8 +159,11 @@ int inet_aton(const char *start, in_addr *i)
|
||||
if ( ( j < 3 ) && ( *(p++) != '.' ) ) return 0;
|
||||
ip = (ip << 8) | val;
|
||||
}
|
||||
i->s_addr = htonl(ip);
|
||||
return p - start;
|
||||
if ( *p == '\0' ) {
|
||||
inp->s_addr = htonl(ip);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
unsigned long strtoul(const char *p, const char **endp, int base)
|
||||
|
Loading…
x
Reference in New Issue
Block a user