]> git.ozlabs.org Git - ppp.git/blobdiff - pppstats/pppstats.c
changes so it will compile with glibc
[ppp.git] / pppstats / pppstats.c
index 2149f2567a4665d1b8061b82f4eeba861a0e7f11..b8784c288b9a7ca81020ca12b5d694bf189fa04d 100644 (file)
@@ -32,7 +32,7 @@
  */
 
 #ifndef lint
-static char rcsid[] = "$Id: pppstats.c,v 1.14 1996/07/01 05:32:57 paulus Exp $";
+static char rcsid[] = "$Id: pppstats.c,v 1.20 1998/02/04 01:42:06 paulus Exp $";
 #endif
 
 #include <stdio.h>
@@ -71,7 +71,20 @@ int  signalled;              /* set if alarm goes off "early" */
 char   *progname;
 char   *interface;
 
-void
+#if defined(SUNOS4) || defined(ULTRIX) || defined(NeXT)
+extern int optind;
+extern char *optarg;
+#endif
+
+static void usage __P((void));
+static void catchalarm __P((int));
+static void get_ppp_stats __P((struct ppp_stats *));
+static void get_ppp_cstats __P((struct ppp_comp_stats *));
+static void intpr __P((void));
+
+int main __P((int, char *argv[]));
+
+static void
 usage()
 {
     fprintf(stderr, "Usage: %s [-a|-d] [-v|-r|-z] [-c count] [-w wait] [interface]\n",
@@ -83,7 +96,7 @@ usage()
  * Called if an interval expires before intpr has completed a loop.
  * Sets a flag to not wait for the alarm.
  */
-void
+static void
 catchalarm(arg)
     int arg;
 {
@@ -92,7 +105,7 @@ catchalarm(arg)
 
 
 #ifndef STREAMS
-void
+static void
 get_ppp_stats(curp)
     struct ppp_stats *curp;
 {
@@ -118,7 +131,7 @@ get_ppp_stats(curp)
     *curp = req.stats;
 }
 
-void
+static void
 get_ppp_cstats(csp)
     struct ppp_comp_stats *csp;
 {
@@ -184,7 +197,7 @@ strioctl(fd, cmd, ptr, ilen, olen)
     return 0;
 }
 
-void
+static void
 get_ppp_stats(curp)
     struct ppp_stats *curp;
 {
@@ -198,7 +211,7 @@ get_ppp_stats(curp)
     }
 }
 
-void
+static void
 get_ppp_cstats(csp)
     struct ppp_comp_stats *csp;
 {
@@ -233,7 +246,7 @@ get_ppp_cstats(csp)
  * collected over that interval.  Assumes that interval is non-zero.
  * First line printed is cumulative.
  */
-void
+static void
 intpr()
 {
     register int line = 0;
@@ -343,7 +356,6 @@ intpr()
            else
                printf("  | %8u", V(p.ppp_obytes));
            printf(" %6u %6u",
-                  V(p.ppp_obytes),
                   V(p.ppp_opackets),
                   V(vj.vjs_compressed));
            if (!rflag)
@@ -397,6 +409,9 @@ main(argc, argv)
     char *argv[];
 {
     int c;
+#ifdef STREAMS
+    char *dev;
+#endif
 
     interface = "ppp0";
     if ((progname = strrchr(argv[0], '/')) == NULL)
@@ -467,6 +482,11 @@ main(argc, argv)
            perror("couldn't create IP socket");
            exit(1);
        }
+
+#ifdef _linux_
+#undef  ifr_name
+#define ifr_name ifr_ifrn.ifrn_name
+#endif
        strncpy(ifr.ifr_name, interface, sizeof(ifr.ifr_name));
        if (ioctl(s, SIOCGIFFLAGS, (caddr_t)&ifr) < 0) {
            fprintf(stderr, "%s: nonexistent interface '%s' specified\n",
@@ -476,9 +496,14 @@ main(argc, argv)
     }
 
 #else  /* STREAMS */
-    if ((s = open("/dev/ppp", O_RDONLY)) < 0) {
-       fprintf(stderr, "%s: ", progname);
-       perror("couldn't open /dev/ppp");
+#ifdef __osf__
+    dev = "/dev/streams/ppp";
+#else
+    dev = "/dev/ppp";
+#endif
+    if ((s = open(dev, O_RDONLY)) < 0) {
+       fprintf(stderr, "%s: couldn't open ", progname);
+       perror(dev);
        exit(1);
     }
     if (strioctl(s, PPPIO_ATTACH, &unit, sizeof(int), 0) < 0) {