Hello community,

here is the log from the commit of package dynamips for openSUSE:Factory 
checked in at 2018-02-20 17:55:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dynamips (Old)
 and      /work/SRC/openSUSE:Factory/.dynamips.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "dynamips"

Tue Feb 20 17:55:06 2018 rev:23 rq:578018 version:0.2.17

Changes:
--------
--- /work/SRC/openSUSE:Factory/dynamips/dynamips.changes        2017-03-03 
17:44:27.341802376 +0100
+++ /work/SRC/openSUSE:Factory/.dynamips.new/dynamips.changes   2018-02-20 
17:55:16.426035588 +0100
@@ -1,0 +2,9 @@
+Sun Feb 18 08:54:40 UTC 2018 - avin...@opensuse.org
+
+- new upstream version 0.2.17
+  * Set nonblocking I/O for UDP sockets
+  * NM-16ESW: process packets even if MAC address table is full
+- remove dos2unix, no longer needed
+- use cmake macros to build
+
+-------------------------------------------------------------------

Old:
----
  dynamips-0.2.16.tar.gz

New:
----
  dynamips-0.2.17.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ dynamips.spec ++++++
--- /var/tmp/diff_new_pack.pcc5il/_old  2018-02-20 17:55:17.901982444 +0100
+++ /var/tmp/diff_new_pack.pcc5il/_new  2018-02-20 17:55:17.905982300 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package dynamips
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,26 +17,23 @@
 
 
 Name:           dynamips
-Version:        0.2.16
+Version:        0.2.17
 Release:        0
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+Summary:        Cisco router Emulator
+License:        GPL-2.0+
+Group:          System/Emulators/Other
+Url:            https://www.gns3.net
+Source:         
https://github.com/GNS3/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Patch1:         define-s390x-arch.patch
 BuildRequires:  cmake
-BuildRequires:  dos2unix
 BuildRequires:  libelf-devel
 BuildRequires:  libpcap-devel
-Url:            http://www.gns3.net
 %ifarch x86_64
 %if %{undefined fedora}
 BuildRequires:  glibc-32bit
 BuildRequires:  glibc-devel-32bit
 %endif
 %endif
-Source:         %{name}-%{version}.tar.gz
-Patch1:         define-s390x-arch.patch
-
-Summary:        Cisco router Emulator
-License:        GPL-2.0+
-Group:          System/Emulators/Other
 
 %description
 Cisco Router Emulator supported by GNS3 Community
@@ -52,28 +49,22 @@
 %patch1 -p1
 
 %build
-mkdir build
-cd build
-CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
-CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ;
+%cmake \
 %ifarch x86_64
-cmake -DYNAMIPS_ARCH=amd64 -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} ..
-%else
-cmake -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} ..
+       -DYNAMIPS_ARCH=amd64 \
 %endif
-%__make %{?_smp_mflags}
+..
+%make_jobs
 
 %install
-cd build
-make DESTDIR=%{buildroot} install
-cd ..
-dos2unix COPYING README.md README.hypervisor TODO
+%cmake_install
 
 %files
-%defattr(-,root,root)
 %{_bindir}/%{name}
 %{_bindir}/nvram_export
-%{_mandir}/man*/*
+%{_mandir}/man1/%{name}.1%{ext_man}
+%{_mandir}/man1/nvram_export.1%{ext_man}
+%{_mandir}/man7/hypervisor_mode.7%{ext_man}
 %{_datadir}/doc/%{name}
 
 %changelog

++++++ dynamips-0.2.16.tar.gz -> dynamips-0.2.17.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/CMakeLists.txt 
new/dynamips-0.2.17/CMakeLists.txt
--- old/dynamips-0.2.16/CMakeLists.txt  2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/CMakeLists.txt  2017-07-24 13:37:51.000000000 +0200
@@ -25,14 +25,14 @@
 message ( STATUS "CMAKE_MODULE_PATH=${CMAKE_MODULE_PATH}" )
 
 project ( dynamips C )
-set ( DYNAMIPS_VERSION_TRAIN 0.2.16 )
+set ( DYNAMIPS_VERSION_TRAIN 0.2.17 )
 set ( DYNAMIPS_VERSION_SUB )
 
 include ( utils )
 include ( dependencies )
 include ( configure )
 
-if(APPLE)
+if( APPLE OR (CMAKE_SYSTEM_NAME MATCHES "FreeBSD") )
     include_directories(include /usr/local/include/)
     include_directories(include /opt/local/include/)
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/ChangeLog 
new/dynamips-0.2.17/ChangeLog
--- old/dynamips-0.2.16/ChangeLog       2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/ChangeLog       2017-07-24 13:37:51.000000000 +0200
@@ -2970,3 +2970,16 @@
 * Add instructions to build on Windows.
 * Remove libuuid dependency and NIO Multicast implementation that depends on 
it. NIO Multicast is never used and maybe not even functional. This will 
simplify the compilation requirements, especially on Windows with Cygwin.
 * EthernetSwitch: Allow to choose ethertype for QinQ outer tag.
+
++--------------------+
+| Release:  v0.2.17  |
++--------------------+
+
+24-07-2017
+----------
+
+* Set nonblocking I/O for UDP sockets
+* Fix tap interface usage on FreeBSD
+* Fix build on FreeBSD
+* NM-16ESW: process packets even if MAC address table is full. Fixes #72.
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/README.md 
new/dynamips-0.2.17/README.md
--- old/dynamips-0.2.16/README.md       2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/README.md       2017-07-24 13:37:51.000000000 +0200
@@ -139,11 +139,12 @@
 You will find ``dynamips.exe`` in the stable directory.
 Put ``cygwin1.dll`` from the Cygwin bin directory in the same directory as 
``dynamips.exe`` to be able to start it from outside Cygwin terminal.
 
-### Releasing
+### Releasing
 
 * Update ChangeLog
 * In common/dynamips.c update sw_version_tag with date
 * Update RELEASE-NOTE
+* Update CMakeLists.txt
 * git tag the release
 
 ### Useful Information 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/RELEASE-NOTES 
new/dynamips-0.2.17/RELEASE-NOTES
--- old/dynamips-0.2.16/RELEASE-NOTES   2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/RELEASE-NOTES   2017-07-24 13:37:51.000000000 +0200
@@ -1,21 +1,22 @@
 Release Notes for Cisco router simulator (Dynamips)
 ===================================================
 
-Version:  v0.2.16
+Version:  v0.2.17
 
-Release date:  Wenesday, March 16st, 2016 (2016-03-16)
+Release date:  Monday, July 24st, 2017 (2017-07-24)
 
-Source code:  https://github.com/GNS3/dynamips/tree/v0.2.16
+Source code:  https://github.com/GNS3/dynamips/tree/v0.2.17
 
 License: GNU GPLv2
 
 
-What's New since v0.2.15
+What's New since v0.2.17
 ========================
 
-    - Add instructions to build on Windows.
-    - Remove libuuid dependency and NIO Multicast implementation that depends 
on it. NIO Multicast is never used and maybe not even functional. This will 
simplify the compilation requirements, especially on Windows with Cygwin.
-    - EthernetSwitch: Allow to choose ethertype for QinQ outer tag.
+* Set nonblocking I/O for UDP sockets
+* Fix tap interface usage on FreeBSD
+* Fix build on FreeBSD
+* NM-16ESW: process packets even if MAC address table is full. Fixes #72.
 
 Known Issues
 ============
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/appveyor.yml 
new/dynamips-0.2.17/appveyor.yml
--- old/dynamips-0.2.16/appveyor.yml    1970-01-01 01:00:00.000000000 +0100
+++ new/dynamips-0.2.17/appveyor.yml    2017-07-24 13:37:51.000000000 +0200
@@ -0,0 +1,27 @@
+platform:
+    - x86
+
+environment:
+    global:
+        CYG_ROOT: C:/cygwin
+        CYG_CACHE: C:/cygwin/var/cache/setup
+        CYG_MIRROR: http://mirrors.kernel.org/sourceware/cygwin/
+        CC: gcc
+    matrix:
+        - CYG_ARCH: x86
+
+install:
+    - 'appveyor DownloadFile http://cygwin.com/setup-%CYG_ARCH%.exe -FileName 
setup.exe'
+    - 'setup.exe -qnNdO -R "%CYG_ROOT%" -s "%CYG_MIRROR%" -l "%CYG_CACHE%" -P 
make -P gcc-core -P cmake >NUL'
+    - 'appveyor DownloadFile http://www.mr511.de/software/libelf-0.8.13.tar.gz'
+    - 'mkdir libelf && tar xvzf libelf-0.8.13.tar.gz -C libelf'
+    - '%CYG_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/libelf/libelf-0.8.13 
&& ./configure && make && make install'
+
+build_script:
+    - '%CYG_ROOT%/bin/bash -lc "ls $APPVEYOR_BUILD_FOLDER'
+    - '%CYG_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER && mkdir -p build'
+    - '%CYG_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build && cmake ..'
+    - '%CYG_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build && make'
+
+artifacts:
+  - path: 'build/stable/dynamips.exe'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/common/dev_nm_16esw.c 
new/dynamips-0.2.17/common/dev_nm_16esw.c
--- old/dynamips-0.2.16/common/dev_nm_16esw.c   2016-03-16 10:05:47.000000000 
+0100
+++ new/dynamips-0.2.17/common/dev_nm_16esw.c   2017-07-24 13:37:51.000000000 
+0200
@@ -2167,8 +2167,7 @@
 #endif
 
    /* Source MAC address learning */
-   if (!bcm5600_src_mac_learning(d,p))
-      return(FALSE);
+   bcm5600_src_mac_learning(d,p);
 
    /* Take forwarding decision based on destination MAC address */
    if (!bcm5600_dst_mac_lookup(d,p))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/common/dynamips.c 
new/dynamips-0.2.17/common/dynamips.c
--- old/dynamips-0.2.16/common/dynamips.c       2016-03-16 10:05:47.000000000 
+0100
+++ new/dynamips-0.2.17/common/dynamips.c       2017-07-24 13:37:51.000000000 
+0200
@@ -4,7 +4,7 @@
  * Patched by Jeremy Grossmann for the GNS3 project (www.gns3.net)
  *
  * Many thanks to Nicolas Szalay for his patch
- * for the command line parsing and virtual machine 
+ * for the command line parsing and virtual machine
  * settings (RAM, ROM, NVRAM, ...)
  */
 
@@ -73,7 +73,7 @@
 const char *sw_version = DYNAMIPS_VERSION"-"JIT_ARCH;
 
 /* Software version tag */
-const char *sw_version_tag = "2015060118";
+const char *sw_version_tag = "2017072410";
 
 /* Hypervisor */
 int hypervisor_mode = 0;
@@ -110,7 +110,7 @@
       case SIGPIPE:
          fprintf(stderr,"Error: unwanted SIGPIPE.\n");
          break;
-                
+
       case SIGINT:
          /* CTRL+C has been pressed */
          if (hypervisor_mode)
@@ -183,7 +183,7 @@
 static void show_usage(vm_instance_t *vm,int argc,char *argv[])
 {
    printf("Usage: %s [options] <ios_image>\n\n",argv[0]);
-   
+
    printf("Available options:\n"
           "  -H [<ip_address>:]<tcp_port> : Run in hypervisor mode\n\n"
           "  -P <platform>      : Platform to emulate (7200, 3600, "
@@ -289,7 +289,7 @@
 
    /* Show possible slot drivers */
    vm_slot_show_drivers(vm);
-   
+
    /* Show the possible NETIO types */
    netio_show_types();
 }
@@ -381,7 +381,7 @@
    vm_instance_t *vm;
 
    vm = vm_create_instance(name,instance_id,platform_name);
-  
+
    if (vm == NULL) {
       fprintf(stderr,"%s: unable to create instance %s!\n",platform_name,name);
       return NULL;
@@ -393,7 +393,7 @@
 /* Parse the command line */
 static int parse_std_cmd_line(int argc,char *argv[])
 {
-   char *options_list = 
+   char *options_list =
       "r:o:n:c:m:l:C:i:jt:p:s:k:T:U:A:B:a:f:E:b:S:R:M:eXP:N:G:g:L:I:";
    vm_platform_t *platform;
    vm_instance_t *vm = NULL;
@@ -427,12 +427,12 @@
       goto exit_failure;
 
    opterr = 0;
-   
+
    vtty_set_ctrlhandler(1); /* By default allow ctrl ] */
    vtty_set_telnetmsg(1);   /* By default allow telnet message */
 
    while((option = getopt_long(argc,argv,options_list,
-                               cmd_line_lopts,NULL)) != -1) 
+                               cmd_line_lopts,NULL)) != -1)
    {
       switch(option)
       {
@@ -503,7 +503,7 @@
             vm->ram_mmap = 0;
             break;
 
-         /* Use a ghost file to simulate RAM */           
+         /* Use a ghost file to simulate RAM */
          case 'G':
             free(vm->ghost_ram_filename);
             vm->ghost_ram_filename = strdup(optarg);
@@ -541,7 +541,7 @@
               printf("Unable to save to %s.\n",optarg);
             }
             break;
-                       
+
          /* Idle PC */
          case OPT_IDLE_PC:
             vm->idle_pc = strtoull(optarg,NULL,0);
@@ -668,7 +668,7 @@
          case 'e':
             gen_eth_show_dev_list();
             goto exit_success;
-#endif            
+#endif
 
          /* Load plugin (already handled) */
          case 'L':
@@ -696,7 +696,7 @@
       /* setting IOS image file        */
       vm_ios_set_image(vm,argv[optind]);
       printf("IOS image file: %s\n\n",vm->ios_image);
-   } else { 
+   } else {
       /* IOS missing */
       fprintf(stderr,"Please specify an IOS image filename\n");
       show_usage(vm,argc,argv);
@@ -722,8 +722,8 @@
    return(-1);
 }
 
-/* 
- * Run in hypervisor mode with a config file if the "-H" option 
+/*
+ * Run in hypervisor mode with a config file if the "-H" option
  * is present in command line.
  */
 static int run_hypervisor(int argc,char *argv[])
@@ -731,7 +731,7 @@
    char *options_list = "H:l:hN:L:";
    int i,option;
    char *index;
-   size_t len;  
+   size_t len;
    FILE *pid_file = NULL; // For saving the pid if requested
 
    vtty_set_ctrlhandler(1); /* By default allow ctrl ] */
@@ -914,7 +914,7 @@
 
    /* Initialize object registry */
    registry_init();
-   
+
    /* Initialize ATM module (for HEC checksums) */
    atm_init();
 
@@ -929,7 +929,7 @@
 
    /* Initialize VTTY code */
    vtty_init();
-   
+
    /* Parse standard command line */
    atexit(destroy_cmd_line_vars);
    if (!run_hypervisor(argc,argv))
@@ -947,7 +947,7 @@
    mips64_exec_create_ilt();
    ppc32_jit_create_ilt();
    ppc32_exec_create_ilt();
-   
+
    setup_signals();
 
    if (!hypervisor_mode) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/common/net.c 
new/dynamips-0.2.17/common/net.c
--- old/dynamips-0.2.16/common/net.c    2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/common/net.c    2017-07-24 13:37:51.000000000 +0200
@@ -342,6 +342,10 @@
    }
 
    freeaddrinfo(res0);
+
+   if (sck >= 0 && m_fd_set_non_block(sck) < 0)
+      perror("Warning: udp_connect: m_fd_set_non_block");
+
    return(sck);
 }
 #else
@@ -387,8 +391,12 @@
    if (connect(sck,(struct sockaddr *)&sin,sizeof(sin)) < 0) {
       perror("udp_connect: connect");
       close(sck);
+      return(-1);
    }
 
+   if (m_fd_set_non_block(sck) < 0)
+      perror("Warning: udp_connect: m_fd_set_non_block");
+
    return(sck);
 }
 #endif /* HAS_RFC2553 */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/common/net_io.c 
new/dynamips-0.2.17/common/net_io.c
--- old/dynamips-0.2.16/common/net_io.c 2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/common/net_io.c 2017-07-24 13:37:51.000000000 +0200
@@ -609,9 +609,11 @@
    return(fd);
 #else
    int i,fd = -1;
+   char tap_fullname[NETIO_DEV_MAXLEN];
    
    if (*tap_devname) {
-      fd = open(tap_devname,O_RDWR);
+      snprintf(tap_fullname,NETIO_DEV_MAXLEN,"/dev/%s",tap_devname);
+      fd = open(tap_fullname,O_RDWR);
    } else {
       for(i=0;i<16;i++) {
          snprintf(tap_devname,NETIO_DEV_MAXLEN,"/dev/tap%d",i);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dynamips-0.2.16/common/utils.c 
new/dynamips-0.2.17/common/utils.c
--- old/dynamips-0.2.16/common/utils.c  2016-03-16 10:05:47.000000000 +0100
+++ new/dynamips-0.2.17/common/utils.c  2017-07-24 13:37:51.000000000 +0200
@@ -399,7 +399,7 @@
 {
    int flags;
 
-   if ((flags = fcntl(fd,F_GETFL,0)) < 1)
+   if ((flags = fcntl(fd,F_GETFL,0)) < 0)
       return(-1);
 
    return(fcntl(fd,F_SETFL, flags | O_NONBLOCK));


Reply via email to