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/gethost.c |
/* $FreeBSD: release/9.1.0/contrib/ipfilter/lib/gethost.c 170268 2007-06-04 02:54:36Z darrenr $ */ /* * Copyright (C) 2002-2004 by Darren Reed. * * See the IPFILTER.LICENCE file for details on licencing. * * $Id: gethost.c,v 1.3.2.2 2006/06/16 17:20:59 darrenr Exp $ */ #include "ipf.h" int gethost(name, hostp) char *name; u_32_t *hostp; { struct hostent *h; struct netent *n; u_32_t addr; if (!strcmp(name, "test.host.dots")) { *hostp = htonl(0xfedcba98); return 0; } if (!strcmp(name, "<thishost>")) name = thishost; h = gethostbyname(name); if (h != NULL) { if ((h->h_addr != NULL) && (h->h_length == sizeof(addr))) { bcopy(h->h_addr, (char *)&addr, sizeof(addr)); *hostp = addr; return 0; } } n = getnetbyname(name); if (n != NULL) { *hostp = (u_32_t)htonl(n->n_net & 0xffffffff); return 0; } return -1; }