Magellan Linux

Diff of /trunk/mkinitrd-magellan/busybox/networking/ifconfig.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 983 by niro, Fri Apr 24 18:33:46 2009 UTC revision 984 by niro, Sun May 30 11:32:42 2010 UTC
# Line 260  static int in_ether(const char *bufp, st Line 260  static int in_ether(const char *bufp, st
260   * Our main function.   * Our main function.
261   */   */
262  int ifconfig_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;  int ifconfig_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
263  int ifconfig_main(int argc, char **argv)  int ifconfig_main(int argc UNUSED_PARAM, char **argv)
264  {  {
265   struct ifreq ifr;   struct ifreq ifr;
266   struct sockaddr_in sai;   struct sockaddr_in sai;
# Line 291  int ifconfig_main(int argc, char **argv) Line 291  int ifconfig_main(int argc, char **argv)
291    
292   /* skip argv[0] */   /* skip argv[0] */
293   ++argv;   ++argv;
  --argc;  
294    
295  #if ENABLE_FEATURE_IFCONFIG_STATUS  #if ENABLE_FEATURE_IFCONFIG_STATUS
296   if (argc > 0 && (argv[0][0] == '-' && argv[0][1] == 'a' && !argv[0][2])) {   if (argv[0] && (argv[0][0] == '-' && argv[0][1] == 'a' && !argv[0][2])) {
297   interface_opt_a = 1;   interface_opt_a = 1;
  --argc;  
298   ++argv;   ++argv;
299   }   }
300  #endif  #endif
301    
302   if (argc <= 1) {   if (!argv[0] || !argv[1]) { /* one or no args */
303  #if ENABLE_FEATURE_IFCONFIG_STATUS  #if ENABLE_FEATURE_IFCONFIG_STATUS
304   return display_interfaces(argc ? *argv : NULL);   return display_interfaces(argv[0] /* can be NULL */);
305  #else  #else
306   bb_error_msg_and_die("no support for status display");   bb_error_msg_and_die("no support for status display");
307  #endif  #endif
# Line 313  int ifconfig_main(int argc, char **argv) Line 311  int ifconfig_main(int argc, char **argv)
311   sockfd = xsocket(AF_INET, SOCK_DGRAM, 0);   sockfd = xsocket(AF_INET, SOCK_DGRAM, 0);
312    
313   /* get interface name */   /* get interface name */
314   strncpy(ifr.ifr_name, *argv, IFNAMSIZ);   strncpy_IFNAMSIZ(ifr.ifr_name, *argv);
315    
316   /* Process the remaining arguments. */   /* Process the remaining arguments. */
317   while (*++argv != (char *) NULL) {   while (*++argv != (char *) NULL) {
# Line 424  int ifconfig_main(int argc, char **argv) Line 422  int ifconfig_main(int argc, char **argv)
422   } else { /* A_CAST_HOST_COPY_IN_ETHER */   } else { /* A_CAST_HOST_COPY_IN_ETHER */
423   /* This is the "hw" arg case. */   /* This is the "hw" arg case. */
424   smalluint hw_class= index_in_substrings("ether\0"   smalluint hw_class= index_in_substrings("ether\0"
425   USE_FEATURE_HWIB("infiniband\0"), *argv) + 1;   IF_FEATURE_HWIB("infiniband\0"), *argv) + 1;
426   if (!hw_class || !*++argv)   if (!hw_class || !*++argv)
427   bb_show_usage();   bb_show_usage();
428   /*safe_strncpy(host, *argv, sizeof(host));*/   /*safe_strncpy(host, *argv, sizeof(host));*/

Legend:
Removed from v.983  
changed lines
  Added in v.984