ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/src/libstatgrab/network_stats.c
(Generate patch)

Comparing projects/libstatgrab/src/libstatgrab/network_stats.c (file contents):
Revision 1.73 by tdb, Mon Apr 25 14:12:05 2005 UTC vs.
Revision 1.75 by ats, Sat Jul 30 13:23:46 2005 UTC

# Line 49 | Line 49
49   #include <sys/socket.h>
50   #include <net/if.h>
51   #include <ctype.h>
52 /* Stuff which could be defined by defining KERNEL, but
53 * that would be a bad idea, so we'll just declare it here
54 */
52   #include <linux/version.h>
53 < #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
54 < typedef __uint8_t __u8;
55 < typedef __uint16_t __u16;
59 < typedef __uint32_t __u32;
60 < typedef __uint64_t __u64;
61 < #else
53 > #include <asm/types.h>
54 > /* These aren't defined by asm/types.h unless the kernel is being
55 >   compiled, but some versions of ethtool.h need them. */
56   typedef __uint8_t u8;
57   typedef __uint16_t u16;
58   typedef __uint32_t u32;
59   typedef __uint64_t u64;
66 #endif
60   #include <linux/ethtool.h>
61   #include <linux/sockios.h>
62   #include <unistd.h>
# Line 414 | Line 407 | int sg_network_io_compare_name(const void *va, const v
407   static void network_iface_stat_init(sg_network_iface_stats *s) {
408          s->interface_name = NULL;
409          s->speed = 0;
410 <        s->dup = SG_IFACE_DUPLEX_UNKNOWN;
410 >        s->duplex = SG_IFACE_DUPLEX_UNKNOWN;
411   }
412  
413   static void network_iface_stat_destroy(sg_network_iface_stats *s) {
# Line 481 | Line 474 | sg_network_iface_stats *sg_get_network_iface_stats(int
474                  }
475  
476                  network_iface_stat_ptr->speed = 0;
477 <                network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_UNKNOWN;
477 >                network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_UNKNOWN;
478                  ifaces++;
479  
480                  memset(&ifmed, 0, sizeof(struct ifmediareq));
# Line 538 | Line 531 | sg_network_iface_stats *sg_get_network_iface_stats(int
531                  }
532  
533                  if( (ifmed.ifm_active | IFM_FDX) == ifmed.ifm_active ){
534 <                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_FULL;
534 >                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_FULL;
535                  }else if( (ifmed.ifm_active | IFM_HDX) == ifmed.ifm_active ){
536 <                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_HALF;
536 >                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_HALF;
537                  }else{
538 <                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_UNKNOWN;
538 >                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_UNKNOWN;
539                  }
540  
541          }      
# Line 596 | Line 589 | sg_network_iface_stats *sg_get_network_iface_stats(int
589                                  network_iface_stat_ptr->speed = 0;
590                          }
591  
592 <                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_UNKNOWN;
592 >                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_UNKNOWN;
593                          if ((knp = kstat_data_lookup(ksp, "link_duplex")) != NULL) {
594                                  switch (knp->value.ui32) {
595                                  case 1:
596 <                                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_HALF;
596 >                                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_HALF;
597                                          break;
598                                  case 2:
599 <                                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_FULL;
599 >                                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_FULL;
600                                          break;
601                                  }
602                          }
# Line 684 | Line 677 | sg_network_iface_stats *sg_get_network_iface_stats(int
677  
678                          switch (ethcmd.duplex) {
679                          case DUPLEX_FULL:
680 <                                network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_FULL;
680 >                                network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_FULL;
681                                  break;
682                          case DUPLEX_HALF:
683 <                                network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_HALF;
683 >                                network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_HALF;
684                                  break;
685                          default:
686 <                                network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_UNKNOWN;
686 >                                network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_UNKNOWN;
687                          }
688                  } else {
689                          /* Not all interfaces support the ethtool ioctl. */
690                          network_iface_stat_ptr->speed = 0;
691 <                        network_iface_stat_ptr->dup = SG_IFACE_DUPLEX_UNKNOWN;
691 >                        network_iface_stat_ptr->duplex = SG_IFACE_DUPLEX_UNKNOWN;
692                  }
693  
694                  ifaces++;
# Line 710 | Line 703 | sg_network_iface_stats *sg_get_network_iface_stats(int
703   #ifdef HPUX
704          sg_set_error(SG_ERROR_UNSUPPORTED, "HP-UX");
705          return NULL;
706 + #endif
707 +
708 + #ifdef SG_ENABLE_DEPRECATED
709 +        network_iface_stat_ptr->dup = network_iface_stat_ptr->duplex;
710   #endif
711  
712          *entries = ifaces;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines