Diff for /embedtools/src/get1steth.c between versions 1.4 and 1.4.2.2

version 1.4, 2013/01/18 12:58:14 version 1.4.2.2, 2013/10/14 07:21:38
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 52  int Verbose; Line 52  int Verbose;
 extern char compiled[], compiledby[], compilehost[];  extern char compiled[], compiledby[], compilehost[];
   
   
static void Usage()static void
 Usage()
 {  {
         printf("-= GET_FIRST_ETHERNET =- Get First Ethernet Interface tool\n"          printf("-= GET_FIRST_ETHERNET =- Get First Ethernet Interface tool\n"
                 "=== %s === %s@%s ===\n\n"                  "=== %s === %s@%s ===\n\n"
Line 63  static void Usage() Line 64  static void Usage()
 }  }
   
 #ifdef HAVE_KLDNEXT  #ifdef HAVE_KLDNEXT
static int kldLoad()static int
 kldLoad()
 {  {
         struct module_stat mstat;          struct module_stat mstat;
         register int i, j;          register int i, j;
Line 93  static int kldLoad() Line 95  static int kldLoad()
   
 // -------------------------------  // -------------------------------
   
int main(int argc, char **argv)int
 main(int argc, char **argv)
 {  {
         char ch, GetOnly = 0;          char ch, GetOnly = 0;
         struct ifaddrs *ifa, *ifp;          struct ifaddrs *ifa, *ifp;
Line 184  int main(int argc, char **argv) Line 187  int main(int argc, char **argv)
                 VERB(3) syslog(LOG_NOTICE, "VLAN module ... %s\n", s ? "Loaded" : "Already loaded");                  VERB(3) syslog(LOG_NOTICE, "VLAN module ... %s\n", s ? "Loaded" : "Already loaded");
 #endif  #endif
   
        // create vlan        s = socket(PF_INET, SOCK_DGRAM, 0);
         if (-1 == s) {
                 syslog(LOG_ERR, "Error:: socket(INET) #%d - %s\n", errno, strerror(errno));
                 closelog();
                 return 2;
         }
 
         /* up parent interface */
         memset(&ifr, 0, sizeof ifr);          memset(&ifr, 0, sizeof ifr);
           strlcpy(ifr.ifr_name, szIface, IFNAMSIZ);
           ifr.ifr_flags |= IFF_UP;
   
           if (ioctl(s, SIOCSIFFLAGS, &ifr) == -1 && errno != EEXIST) {
                   syslog(LOG_ERR, "Error:: UP interface=%s ioctl(SIOCSIFFLAGS) #%d - %s\n", 
                                   szIface, errno, strerror(errno));
                   close(s);
                   return 2;
           }
   
           /* create vlan */
           memset(&ifr, 0, sizeof ifr);
         strlcpy(vlr.vlr_parent, szIface, IFNAMSIZ);          strlcpy(vlr.vlr_parent, szIface, IFNAMSIZ);
         vlr.vlr_tag = MGMT_VTAG;          vlr.vlr_tag = MGMT_VTAG;
   
         strlcpy(ifr.ifr_name, MGMT_IFACE, IFNAMSIZ);          strlcpy(ifr.ifr_name, MGMT_IFACE, IFNAMSIZ);
         ifr.ifr_data = (void *) &vlr;          ifr.ifr_data = (void *) &vlr;
   
         s = socket(PF_INET, SOCK_DGRAM, 0);  
         if (-1 == s) {  
                 syslog(LOG_ERR, "Error:: socket(INET) #%d - %s\n", errno, strerror(errno));  
                 closelog();  
                 return 2;  
         }  
 #ifdef SIOCIFCREATE2  #ifdef SIOCIFCREATE2
         if (ioctl(s, SIOCIFCREATE2, &ifr) == -1 && errno != EEXIST) {          if (ioctl(s, SIOCIFCREATE2, &ifr) == -1 && errno != EEXIST) {
 #else  #else
Line 211  int main(int argc, char **argv) Line 227  int main(int argc, char **argv)
   
         memset(&ifra, 0, sizeof ifra);          memset(&ifra, 0, sizeof ifra);
 #if defined(__FreeBSD__)  #if defined(__FreeBSD__)
        // rename iface        /* rename iface */
         VERB(2) syslog(LOG_NOTICE, "Info:: Created interface=%s\n", MGMT_IFACE);          VERB(2) syslog(LOG_NOTICE, "Info:: Created interface=%s\n", MGMT_IFACE);
         ifr.ifr_data = MGMT_NAME;          ifr.ifr_data = MGMT_NAME;
         if (errno != EEXIST && ioctl(s, SIOCSIFNAME, &ifr) == -1) {          if (errno != EEXIST && ioctl(s, SIOCSIFNAME, &ifr) == -1) {
Line 226  int main(int argc, char **argv) Line 242  int main(int argc, char **argv)
         strlcpy(ifra.ifra_name, MGMT_IFACE, IFNAMSIZ);          strlcpy(ifra.ifra_name, MGMT_IFACE, IFNAMSIZ);
 #endif  #endif
   
        // assign address & up        /* assign address & up */
         sin = (struct sockaddr_in*) &ifra.ifra_addr;          sin = (struct sockaddr_in*) &ifra.ifra_addr;
         sin->sin_len = sizeof ifra.ifra_addr;          sin->sin_len = sizeof ifra.ifra_addr;
         sin->sin_family = AF_INET;          sin->sin_family = AF_INET;

Removed from v.1.4  
changed lines
  Added in v.1.4.2.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>