Current Path : /usr/src/contrib/ipfilter/lib/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/src/contrib/ipfilter/lib/getportproto.c |
/* $FreeBSD: release/9.1.0/contrib/ipfilter/lib/getportproto.c 170268 2007-06-04 02:54:36Z darrenr $ */ /* * Copyright (C) 2002-2005 by Darren Reed. * * See the IPFILTER.LICENCE file for details on licencing. * * $Id: getportproto.c,v 1.2.4.4 2006/06/16 17:21:00 darrenr Exp $ */ #include <ctype.h> #include "ipf.h" int getportproto(name, proto) char *name; int proto; { struct servent *s; struct protoent *p; if (ISDIGIT(*name)) { int number; char *s; for (s = name; *s != '\0'; s++) if (!ISDIGIT(*s)) return -1; number = atoi(name); if (number < 0 || number > 65535) return -1; return htons(number); } p = getprotobynumber(proto); s = getservbyname(name, p ? p->p_name : NULL); if (s != NULL) return s->s_port; return -1; }