Index: ossp-pkg/sa/sa.c RCS File: /v/ossp/cvs/ossp-pkg/sa/sa.c,v rcsdiff -q -kk '-r1.42' '-r1.43' -u '/v/ossp/cvs/ossp-pkg/sa/sa.c,v' 2>/dev/null --- sa.c 2002/01/02 12:43:50 1.42 +++ sa.c 2002/01/02 13:08:13 1.43 @@ -859,7 +859,6 @@ int nType; int nProto; struct protoent *pe; - char *cpProto; /* argument sanity check(s) */ if (sa == NULL) @@ -885,15 +884,24 @@ #else else if (nFamily == AF_INET) { #endif +#if defined(IPPROTO_TCP) && defined(IPPROTO_UDP) if (nType == SOCK_STREAM) - cpProto = "tcp"; + nProto = IPPROTO_TCP; else if (nType == SOCK_DGRAM) - cpProto = "udp"; + nProto = IPPROTO_UDP; else return SA_ERR_INT; - if ((pe = getprotobyname(cpProto)) == NULL) +#else + if (nType == SOCK_STREAM) + pe = getprotobyname("tcp"); + else if (nType == SOCK_DGRAM) + pe = getprotobyname("udp"); + else + return SA_ERR_INT; + if (pe == NULL) return SA_ERR_SYS; nProto = pe->p_proto; +#endif } else return SA_ERR_INT;