Lines Matching +full:in +full:- +full:and +full:- +full:around

3   * around library functions and system calls that are known to have problems
19 #include <netinet/in.h>
34 * Result: long hostnames would be truncated, and connections would be
43 /* In case not defined in <sys/param.h>. */
70 * With some System-V versions, the fgets() library function does not
74 * The following code works around the problem. It does no harm on "normal"
92 len--; in fix_fgets()
113 * With early SunOS 5 versions, recvfrom() does not completely fill in the
114 * source address structure when doing a non-destructive read. The following
115 * code works around the problem. It does no harm on "normal" systems.
130 if (from->sa_family == 0) { in fix_recvfrom()
137 from->sa_family = my_addr.sa_family; in fix_recvfrom()
147 * The Apollo SR10.3 and some SYSV4 getpeername(2) versions do not return an
148 * error in case of a datagram-oriented socket. Instead, they claim that all
149 * UDP requests come from address 0.0.0.0. The following code works around
168 && ((sin->su_si.si_family == AF_INET6
169 && IN6_IS_ADDR_UNSPECIFIED(&sin->su_sin6.sin6_addr))
170 || (sin->su_si.si_family == AF_INET
171 && sin->su_sin.sin_addr.s_addr == 0))) {
173 && sa->sa_family == AF_INET
174 && sin->sin_addr.s_addr == 0) {
177 return (-1);
186 * According to Karl Vogel (vogelke@c-17igp.wpafb.af.mil) some Pyramid
209 * doing DNS through NIS, only one host address ends up in the address list.
210 * All other addresses end up in the hostname alias list, interspersed with
213 * accidentally left in. A side effect of the workaround is that address
230 if ((hp = gethostbyname(name)) && !hp->h_addr_list[1] && hp->h_aliases[1]) {
231 for (o_aliases = n_addr_list = hp->h_aliases; *o_aliases; o_aliases++) {
233 memcpy(*n_addr_list++, (char *) &addr, hp->h_length);
238 o_addr_list = hp->h_addr_list;
239 memcpy(*n_addr_list++, *o_addr_list, hp->h_length);
241 hp->h_addr_list = hp->h_aliases;
242 hp->h_aliases = o_addr_list + 1;
253 * private strtok(). This has been fixed in the meantime.
273 * IRIX 5.3 (and possibly earlier versions, too) library routines call the
274 * non-reentrant strtok() library routine, causing hosts to slip through
275 * allow/deny filters. Workaround: don't rely on the vendor and use our own
276 * strtok() function. FreeBSD 2.0 has a similar problem (fixed in 2.0.5).
290 * Skip over separator characters and detect end of string.
296 * Skip over non-separator characters and terminate result.