Diff for /embedaddon/miniupnpd/pf/testobsdrdr.c between versions 1.1.1.1 and 1.1.1.3

version 1.1.1.1, 2012/02/21 23:16:02 version 1.1.1.3, 2013/07/22 00:32:35
Line 1 Line 1
 /* $Id$ */  /* $Id$ */
 /* MiniUPnP project  /* MiniUPnP project
  * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/   * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
 * (c) 2006-2010 Thomas Bernard  * (c) 2006-2012 Thomas Bernard
  * This software is subject to the conditions detailed   * This software is subject to the conditions detailed
  * in the LICENCE file provided within the distribution */   * in the LICENCE file provided within the distribution */
   
 #include <stdio.h>  #include <stdio.h>
   #include <stdlib.h>
 #include <sys/types.h>  #include <sys/types.h>
 #include <netinet/in.h>  #include <netinet/in.h>
 #include <syslog.h>  #include <syslog.h>
Line 15 Line 16
 /*int logpackets = 1;*/  /*int logpackets = 1;*/
 int runtime_flags = 0;  int runtime_flags = 0;
 const char * tag = 0;  const char * tag = 0;
   const char * anchor_name = "miniupnpd";
   
 void  void
 list_rules(void);  list_rules(void);
   
 void  void
   list_eports_tcp(void)
   {
           unsigned short * port_list;
           unsigned int number = 0;
           unsigned int i;
           port_list = get_portmappings_in_range(0, 65535, IPPROTO_TCP, &number);
           printf("%u ports redirected (TCP) :", number);
           for(i = 0; i < number; i++)
           {
                   printf(" %hu", port_list[i]);
           }
           printf("\n");
           free(port_list);
   }
   
   void
 test_index(void)  test_index(void)
 {  {
         char ifname[16/*IFNAMSIZ*/];          char ifname[16/*IFNAMSIZ*/];
         char iaddr[32];          char iaddr[32];
         char desc[64];          char desc[64];
           char rhost[32];
         unsigned short iport = 0;          unsigned short iport = 0;
         unsigned short eport = 0;          unsigned short eport = 0;
         int proto = 0;          int proto = 0;
           unsigned int timestamp;
         ifname[0] = '\0';          ifname[0] = '\0';
         iaddr[0] = '\0';          iaddr[0] = '\0';
           rhost[0] = '\0';
         if(get_redirect_rule_by_index(0, ifname, &eport, iaddr, sizeof(iaddr),          if(get_redirect_rule_by_index(0, ifname, &eport, iaddr, sizeof(iaddr),
                                       &iport, &proto, desc, sizeof(desc),                                        &iport, &proto, desc, sizeof(desc),
                                  0, 0) < 0)                                      rhost, sizeof(rhost),
                                   &timestamp, 0, 0) < 0)
         {          {
                 printf("get.._by_index : no rule\n");                  printf("get.._by_index : no rule\n");
         }          }
Line 49  main(int arc, char * * argv) Line 71  main(int arc, char * * argv)
 {  {
         char buf[32];          char buf[32];
         char desc[64];          char desc[64];
           char rhost[64];
           /*char rhost[32];*/
         unsigned short iport;          unsigned short iport;
           unsigned int timestamp;
         u_int64_t packets = 0;          u_int64_t packets = 0;
         u_int64_t bytes = 0;          u_int64_t bytes = 0;
   
Line 59  main(int arc, char * * argv) Line 84  main(int arc, char * * argv)
                 fprintf(stderr, "init_redirect() failed\n");                  fprintf(stderr, "init_redirect() failed\n");
                 return 1;                  return 1;
         }          }
        //add_redirect_rule("ep0", 12123, "192.168.1.23", 1234);#if 0
        //add_redirect_rule2("ep0", 12155, "192.168.1.155", 1255, IPPROTO_TCP);        add_redirect_rule("ep0", 12123, "192.168.1.23", 1234);
        //add_redirect_rule2("ep0", 12123, "192.168.1.125", 1234,        add_redirect_rule2("ep0", 12155, "192.168.1.155", 1255, IPPROTO_TCP);
        //                   IPPROTO_UDP, "test description");#endif
        //add_redirect_rule2("em0", 12123, "127.1.2.3", 1234,        add_redirect_rule2("ep0", "8.8.8.8", 12123, "192.168.1.125", 1234,
        //                   IPPROTO_TCP, "test description tcp");                           IPPROTO_UDP, "test description", 0);
 #if 0
         add_redirect_rule2("em0", 12123, "127.1.2.3", 1234,
                            IPPROTO_TCP, "test description tcp");
 #endif
   
         list_rules();          list_rules();
           list_eports_tcp();
   
   
         if(get_redirect_rule("xl1", 4662, IPPROTO_TCP,          if(get_redirect_rule("xl1", 4662, IPPROTO_TCP,
                             buf, 32, &iport, desc, sizeof(desc),                             buf, sizeof(buf), &iport, desc, sizeof(desc),
                              rhost, sizeof(rhost),
                              &timestamp,
                              &packets, &bytes) < 0)                               &packets, &bytes) < 0)
                 printf("get_redirect_rule() failed\n");                  printf("get_redirect_rule() failed\n");
         else          else
Line 77  main(int arc, char * * argv) Line 110  main(int arc, char * * argv)
                 printf("\n%s:%d '%s' packets=%llu bytes=%llu\n", buf, (int)iport, desc,                  printf("\n%s:%d '%s' packets=%llu bytes=%llu\n", buf, (int)iport, desc,
                        packets, bytes);                         packets, bytes);
         }          }
#if 0
         if(delete_redirect_rule("ep0", 12123, IPPROTO_UDP) < 0)          if(delete_redirect_rule("ep0", 12123, IPPROTO_UDP) < 0)
                 printf("delete_redirect_rule() failed\n");                  printf("delete_redirect_rule() failed\n");
         else          else
Line 87  main(int arc, char * * argv) Line 120  main(int arc, char * * argv)
                 printf("delete_redirect_rule() failed\n");                  printf("delete_redirect_rule() failed\n");
         else          else
                 printf("delete_redirect_rule() succeded\n");                  printf("delete_redirect_rule() succeded\n");
 #endif  
         //test_index();  
   
        //clear_redirect_rules();#if 0
        //list_rules();        test_index();
 
         clear_redirect_rules();
         list_rules();
 #endif
   
         return 0;          return 0;
 }  }

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.3


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