summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ppp/route.c
diff options
context:
space:
mode:
authorbrian <brian@FreeBSD.org>1997-08-25 00:29:32 +0000
committerbrian <brian@FreeBSD.org>1997-08-25 00:29:32 +0000
commit1a67d257255b14fb46fc02630bf861a49bebd625 (patch)
tree5a0190bb42d398d91fc5bbdd17de31f54aec2459 /usr.sbin/ppp/route.c
parentbbf38e6e36ecd35771c55badcb09ca745a61d881 (diff)
downloadFreeBSD-src-1a67d257255b14fb46fc02630bf861a49bebd625.zip
FreeBSD-src-1a67d257255b14fb46fc02630bf861a49bebd625.tar.gz
Make the code format more in line with style(9).
Update loadalias to use the new libalias api. Update to version 1.1.
Diffstat (limited to 'usr.sbin/ppp/route.c')
-rw-r--r--usr.sbin/ppp/route.c212
1 files changed, 110 insertions, 102 deletions
diff --git a/usr.sbin/ppp/route.c b/usr.sbin/ppp/route.c
index cd69a4f..2f2f57f 100644
--- a/usr.sbin/ppp/route.c
+++ b/usr.sbin/ppp/route.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: route.c,v 1.16 1997/06/20 23:43:35 brian Exp $
+ * $Id: route.c,v 1.17 1997/07/28 01:02:27 brian Exp $
*
*/
#include <sys/types.h>
@@ -54,11 +54,10 @@ struct rtmsg {
static int seqno;
void
-OsSetRoute(cmd, dst, gateway, mask)
-int cmd;
-struct in_addr dst;
-struct in_addr gateway;
-struct in_addr mask;
+OsSetRoute(int cmd,
+ struct in_addr dst,
+ struct in_addr gateway,
+ struct in_addr mask)
{
struct rtmsg rtmes;
int s, nb, wb;
@@ -71,7 +70,6 @@ struct in_addr mask;
LogPrintf(LogERROR, "OsSetRoute: socket: %s", strerror(errno));
return;
}
-
bzero(&rtmes, sizeof(rtmes));
rtmes.m_rtm.rtm_version = RTM_VERSION;
rtmes.m_rtm.rtm_type = cmd;
@@ -94,11 +92,10 @@ struct in_addr mask;
bcopy(&rtdata, cp, 16);
cp += 16;
}
-
if (dst.s_addr == INADDR_ANY)
mask.s_addr = INADDR_ANY;
- lp = (u_long *)cp;
+ lp = (u_long *) cp;
if (mask.s_addr) {
*lp++ = 8;
@@ -108,68 +105,84 @@ struct in_addr mask;
*lp = 0;
cp += sizeof(u_long);
- nb = cp - (char *)&rtmes;
+ nb = cp - (char *) &rtmes;
rtmes.m_rtm.rtm_msglen = nb;
wb = write(s, &rtmes, nb);
if (wb < 0) {
LogPrintf(LogTCPIP, "OsSetRoute: Dst = %s\n", inet_ntoa(dst));
LogPrintf(LogTCPIP, "OsSetRoute: Gateway = %s\n", inet_ntoa(gateway));
LogPrintf(LogTCPIP, "OsSetRoute: Mask = %s\n", inet_ntoa(mask));
- switch(rtmes.m_rtm.rtm_errno) {
- case EEXIST:
- LogPrintf(LogTCPIP, "Add route failed: Already exists\n");
- break;
- case ESRCH:
- LogPrintf(LogTCPIP, "Del route failed: Non-existent\n");
- break;
- case ENOBUFS:
- default:
- LogPrintf(LogTCPIP, "Add/Del route failed: %s\n",
- strerror(rtmes.m_rtm.rtm_errno));
- break;
+ switch (rtmes.m_rtm.rtm_errno) {
+ case EEXIST:
+ LogPrintf(LogTCPIP, "Add route failed: Already exists\n");
+ break;
+ case ESRCH:
+ LogPrintf(LogTCPIP, "Del route failed: Non-existent\n");
+ break;
+ case ENOBUFS:
+ default:
+ LogPrintf(LogTCPIP, "Add/Del route failed: %s\n",
+ strerror(rtmes.m_rtm.rtm_errno));
+ break;
}
}
-
LogPrintf(LogDEBUG, "wrote %d: dst = %x, gateway = %x\n", nb,
- dst.s_addr, gateway.s_addr);
+ dst.s_addr, gateway.s_addr);
close(s);
}
static void
-p_sockaddr(sa, width)
-struct sockaddr *sa;
-int width;
+p_sockaddr(struct sockaddr * sa, int width)
{
if (VarTerm) {
register char *cp;
- register struct sockaddr_in *sin = (struct sockaddr_in *)sa;
+ register struct sockaddr_in *sin = (struct sockaddr_in *) sa;
cp = (sin->sin_addr.s_addr == 0) ? "default" :
- inet_ntoa(sin->sin_addr);
+ inet_ntoa(sin->sin_addr);
fprintf(VarTerm, "%-*.*s ", width, width, cp);
}
}
struct bits {
short b_mask;
- char b_val;
-} bits[] = {
- { RTF_UP, 'U' },
- { RTF_GATEWAY, 'G' },
- { RTF_HOST, 'H' },
- { RTF_DYNAMIC, 'D' },
- { RTF_MODIFIED, 'M' },
- { RTF_CLONING, 'C' },
- { RTF_XRESOLVE, 'X' },
- { RTF_LLINFO, 'L' },
- { RTF_REJECT, 'R' },
- { 0 }
+ char b_val;
+} bits[] = {
+
+ {
+ RTF_UP, 'U'
+ },
+ {
+ RTF_GATEWAY, 'G'
+ },
+ {
+ RTF_HOST, 'H'
+ },
+ {
+ RTF_DYNAMIC, 'D'
+ },
+ {
+ RTF_MODIFIED, 'M'
+ },
+ {
+ RTF_CLONING, 'C'
+ },
+ {
+ RTF_XRESOLVE, 'X'
+ },
+ {
+ RTF_LLINFO, 'L'
+ },
+ {
+ RTF_REJECT, 'R'
+ },
+ {
+ 0
+ }
};
static void
-p_flags(f, format)
-register int f;
-char *format;
+p_flags(int f, char *format)
{
if (VarTerm) {
char name[33], *flags;
@@ -177,7 +190,7 @@ char *format;
for (flags = name; p->b_mask; p++)
if (p->b_mask & f)
- *flags++ = p->b_val;
+ *flags++ = p->b_val;
*flags = '\0';
fprintf(VarTerm, format, name);
}
@@ -206,50 +219,48 @@ ShowRoute()
mib[5] = 0;
if (sysctl(mib, 6, NULL, &needed, NULL, 0) < 0) {
LogPrintf(LogERROR, "sysctl: estimate: %s", strerror(errno));
- return(1);
+ return (1);
}
-
if (needed < 0)
- return(1);
+ return (1);
sp = malloc(needed);
if (sp == NULL)
- return(1);
+ return (1);
if (sysctl(mib, 6, sp, &needed, NULL, 0) < 0) {
LogPrintf(LogERROR, "sysctl: getroute: %s", strerror(errno));
free(sp);
- return(1);
+ return (1);
}
-
ep = sp + needed;
for (cp = sp; cp < ep; cp += rtm->rtm_msglen) {
- rtm = (struct rt_msghdr *)cp;
- sa = (struct sockaddr *)(rtm + 1);
+ rtm = (struct rt_msghdr *) cp;
+ sa = (struct sockaddr *) (rtm + 1);
mask = 0xffffffff;
if (rtm->rtm_addrs == RTA_DST)
p_sockaddr(sa, 36);
else {
- wp = (u_char *)cp + rtm->rtm_msglen;
+ wp = (u_char *) cp + rtm->rtm_msglen;
p_sockaddr(sa, 16);
if (sa->sa_len == 0)
sa->sa_len = sizeof(long);
- sa = (struct sockaddr *)(sa->sa_len + (char *)sa);
+ sa = (struct sockaddr *) (sa->sa_len + (char *) sa);
p_sockaddr(sa, 18);
- lp = (int *)(sa->sa_len + (char *)sa);
- if ((char *)lp < (char *)wp && *lp) {
+ lp = (int *) (sa->sa_len + (char *) sa);
+ if ((char *) lp < (char *) wp && *lp) {
LogPrintf(LogDEBUG, " flag = %x, rest = %d", rtm->rtm_flags, *lp);
- wp = (u_char *)(lp + 1);
+ wp = (u_char *) (lp + 1);
mask = 0;
- for (nb = *(char *)lp; nb > 4; nb--) {
+ for (nb = *(char *) lp; nb > 4; nb--) {
mask <<= 8;
mask |= *wp++;
}
- for (nb = 8 - *(char *)lp; nb > 0; nb--)
+ for (nb = 8 - *(char *) lp; nb > 0; nb--)
mask <<= 8;
}
}
fprintf(VarTerm, "%08lx ", mask);
- p_flags(rtm->rtm_flags & (RTF_UP|RTF_GATEWAY|RTF_HOST), "%-6.6s ");
+ p_flags(rtm->rtm_flags & (RTF_UP | RTF_GATEWAY | RTF_HOST), "%-6.6s ");
fprintf(VarTerm, "(%d)\n", rtm->rtm_index);
}
free(sp);
@@ -260,8 +271,7 @@ ShowRoute()
* Delete routes associated with our interface
*/
void
-DeleteIfRoutes(all)
-int all;
+DeleteIfRoutes(int all)
{
struct rt_msghdr *rtm;
struct sockaddr *sa;
@@ -285,7 +295,6 @@ int all;
LogPrintf(LogERROR, "sysctl: estimate: %s", strerror(errno));
return;
}
-
if (needed < 0)
return;
@@ -301,28 +310,28 @@ int all;
ep = sp + needed;
for (cp = sp; cp < ep; cp += rtm->rtm_msglen) {
- rtm = (struct rt_msghdr *)cp;
- sa = (struct sockaddr *)(rtm + 1);
+ rtm = (struct rt_msghdr *) cp;
+ sa = (struct sockaddr *) (rtm + 1);
LogPrintf(LogDEBUG, "DeleteIfRoutes: addrs: %x, index: %d, flags: %x,"
- " dstnet: %s\n",
- rtm->rtm_addrs, rtm->rtm_index, rtm->rtm_flags,
- inet_ntoa(((struct sockaddr_in *)sa)->sin_addr));
+ " dstnet: %s\n",
+ rtm->rtm_addrs, rtm->rtm_index, rtm->rtm_flags,
+ inet_ntoa(((struct sockaddr_in *) sa)->sin_addr));
if (rtm->rtm_addrs != RTA_DST &&
- (rtm->rtm_index == IfIndex) &&
- (all || (rtm->rtm_flags & RTF_GATEWAY))) {
+ (rtm->rtm_index == IfIndex) &&
+ (all || (rtm->rtm_flags & RTF_GATEWAY))) {
LogPrintf(LogDEBUG, "DeleteIfRoutes: Remove it\n");
- dstnet = ((struct sockaddr_in *)sa)->sin_addr;
- wp = (u_char *)cp + rtm->rtm_msglen;
+ dstnet = ((struct sockaddr_in *) sa)->sin_addr;
+ wp = (u_char *) cp + rtm->rtm_msglen;
if (sa->sa_len == 0)
sa->sa_len = sizeof(long);
- sa = (struct sockaddr *)(sa->sa_len + (char *)sa);
- gateway = ((struct sockaddr_in *)sa)->sin_addr;
- lp = (int *)(sa->sa_len + (char *)sa);
+ sa = (struct sockaddr *) (sa->sa_len + (char *) sa);
+ gateway = ((struct sockaddr_in *) sa)->sin_addr;
+ lp = (int *) (sa->sa_len + (char *) sa);
mask = 0;
- if ((char *)lp < (char *)wp && *lp) {
+ if ((char *) lp < (char *) wp && *lp) {
LogPrintf(LogDEBUG, "DeleteIfRoutes: flag = %x, rest = %d",
rtm->rtm_flags, *lp);
- wp = (u_char *)(lp + 1);
+ wp = (u_char *) (lp + 1);
for (nb = *lp; nb > 4; nb--) {
mask <<= 8;
mask |= *wp++;
@@ -334,7 +343,7 @@ int all;
LogPrintf(LogDEBUG, "DeleteIfRoutes: Gw: %s\n", inet_ntoa(gateway));
LogPrintf(LogDEBUG, "DeleteIfRoutes: Index: %d\n", rtm->rtm_index);
if (dstnet.s_addr == INADDR_ANY)
- mask = INADDR_ANY;
+ mask = INADDR_ANY;
maddr.s_addr = htonl(mask);
OsSetRoute(RTM_DELETE, dstnet, gateway, maddr);
}
@@ -347,41 +356,41 @@ int all;
*/
int
-GetIfIndex(name)
-char *name;
+GetIfIndex(char *name)
{
char *buffer;
struct ifreq *ifrp;
int s, len, elen, index;
struct ifconf ifconfs;
+
/* struct ifreq reqbuf[256]; -- obsoleted :) */
int oldbufsize, bufsize = sizeof(struct ifreq);
s = socket(AF_INET, SOCK_DGRAM, 0);
if (s < 0) {
LogPrintf(LogERROR, "GetIfIndex: socket: %s", strerror(errno));
- return(-1);
+ return (-1);
}
+ buffer = malloc(bufsize); /* allocate first buffer */
+ ifconfs.ifc_len = bufsize; /* Initial setting */
- buffer = malloc(bufsize); /* allocate first buffer */
- ifconfs.ifc_len = bufsize; /* Initial setting */
/*
- * Iterate through here until we don't get many more data
+ * Iterate through here until we don't get many more data
*/
do {
- oldbufsize = ifconfs.ifc_len;
- bufsize += 1+sizeof(struct ifreq);
- buffer = realloc((void *)buffer, bufsize); /* Make it bigger */
- LogPrintf(LogDEBUG, "GetIfIndex: Growing buffer to %d\n", bufsize);
- ifconfs.ifc_len = bufsize;
- ifconfs.ifc_buf = buffer;
- if (ioctl(s, SIOCGIFCONF, &ifconfs) < 0) {
- LogPrintf(LogERROR, "ioctl(SIOCGIFCONF): %s", strerror(errno));
- close(s);
- free(buffer);
- return(-1);
- }
+ oldbufsize = ifconfs.ifc_len;
+ bufsize += 1 + sizeof(struct ifreq);
+ buffer = realloc((void *) buffer, bufsize); /* Make it bigger */
+ LogPrintf(LogDEBUG, "GetIfIndex: Growing buffer to %d\n", bufsize);
+ ifconfs.ifc_len = bufsize;
+ ifconfs.ifc_buf = buffer;
+ if (ioctl(s, SIOCGIFCONF, &ifconfs) < 0) {
+ LogPrintf(LogERROR, "ioctl(SIOCGIFCONF): %s", strerror(errno));
+ close(s);
+ free(buffer);
+ return (-1);
+ }
} while (ifconfs.ifc_len > oldbufsize);
ifrp = ifconfs.ifc_req;
@@ -394,20 +403,19 @@ char *name;
index, IFNAMSIZ, IFNAMSIZ, ifrp->ifr_name,
ifrp->ifr_addr.sa_family, elen);
if (strcmp(ifrp->ifr_name, name) == 0) {
- IfIndex = index;
+ IfIndex = index;
close(s);
free(buffer);
- return(index);
+ return (index);
}
index++;
}
-
len -= elen;
- ifrp = (struct ifreq *)((char *)ifrp + elen);
+ ifrp = (struct ifreq *) ((char *) ifrp + elen);
ifrp++;
}
close(s);
free(buffer);
- return(-1);
+ return (-1);
}
OpenPOWER on IntegriCloud