Remove inet_ntoa() from the kernel
inet_ntoa() cannot be used safely in a multithreaded environment because it uses a static local buffer. Remove it from the kernel. Suggested by: glebius, emaste Reviewed by: gnn MFC after: never Sponsored by: Dell EMC Differential Revision: https://reviews.freebsd.org/D9625
This commit is contained in:
parent
c7c348accc
commit
f36100ef2c
@ -35,20 +35,6 @@ __FBSDID("$FreeBSD$");
|
||||
|
||||
#include <netinet/in.h>
|
||||
|
||||
char *
|
||||
inet_ntoa(struct in_addr ina)
|
||||
{
|
||||
static char buf[4*sizeof "123"];
|
||||
unsigned char *ucp = (unsigned char *)&ina;
|
||||
|
||||
sprintf(buf, "%d.%d.%d.%d",
|
||||
ucp[0] & 0xff,
|
||||
ucp[1] & 0xff,
|
||||
ucp[2] & 0xff,
|
||||
ucp[3] & 0xff);
|
||||
return buf;
|
||||
}
|
||||
|
||||
char *
|
||||
inet_ntoa_r(struct in_addr ina, char *buf)
|
||||
{
|
||||
|
@ -646,7 +646,6 @@ int in_localaddr(struct in_addr);
|
||||
int in_localip(struct in_addr);
|
||||
int in_ifhasaddr(struct ifnet *, struct in_addr);
|
||||
int inet_aton(const char *, struct in_addr *); /* in libkern */
|
||||
char *inet_ntoa(struct in_addr); /* in libkern */
|
||||
char *inet_ntoa_r(struct in_addr ina, char *buf); /* in libkern */
|
||||
char *inet_ntop(int, const void *, char *, socklen_t); /* in libkern */
|
||||
int inet_pton(int af, const char *, void *); /* in libkern */
|
||||
|
Loading…
x
Reference in New Issue
Block a user