aboutsummaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorMartin Wilke <miwi@FreeBSD.org>2007-09-20 02:10:56 +0000
committerMartin Wilke <miwi@FreeBSD.org>2007-09-20 02:10:56 +0000
commit51e5794fa02c75828ed051b1bed41bed81e877fd (patch)
tree2cabb6ce14b0d18f1dd68c7f3a130540279a12f2 /emulators
parentf6a504fdb3e8cbb6773204e73f1c55561327d87d (diff)
downloadports-51e5794fa02c75828ed051b1bed41bed81e877fd.tar.gz
ports-51e5794fa02c75828ed051b1bed41bed81e877fd.zip
Notes
Diffstat (limited to 'emulators')
-rw-r--r--emulators/dynamips-devel/Makefile4
-rw-r--r--emulators/dynamips-devel/distinfo6
-rw-r--r--emulators/dynamips-devel/files/patch-Makefile38
-rw-r--r--emulators/dynamips-devel/files/patch-README11
-rw-r--r--emulators/dynamips-devel/files/patch-README.hypervisor11
-rw-r--r--emulators/dynamips-devel/files/patch-dev_vtty.c15
-rw-r--r--emulators/dynamips-devel/files/patch-dynamips.116
-rw-r--r--emulators/dynamips-devel/files/patch-dynamips.c97
-rw-r--r--emulators/dynamips-devel/files/patch-hypervisor.c20
-rw-r--r--emulators/dynamips-devel/files/patch-hypervisor.h10
-rw-r--r--emulators/dynamips-devel/files/patch-net.c38
-rw-r--r--emulators/dynamips-devel/files/patch-net.h10
-rw-r--r--emulators/dynamips-devel/files/patch-utils.c11
-rw-r--r--emulators/dynamips-devel/files/patch-utils.h20
14 files changed, 72 insertions, 235 deletions
diff --git a/emulators/dynamips-devel/Makefile b/emulators/dynamips-devel/Makefile
index 95c01953204d..60bb31ee9100 100644
--- a/emulators/dynamips-devel/Makefile
+++ b/emulators/dynamips-devel/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= dynamips
-DISTVERSION= 0.2.7-RC3
+DISTVERSION= 0.2.8-RC1
CATEGORIES= emulators
MASTER_SITES= http://www.ipflow.utc.fr/dynamips/
PKGNAMESUFFIX= -devel
@@ -16,6 +16,8 @@ COMMENT= Cisco 3600/7200 Simulator
LIB_DEPENDS= elf.0:${PORTSDIR}/devel/libelf
+CONFLICTS= dynamips-[0-9]*
+
USE_GMAKE= yes
USE_GCC= 3.2+
USE_GETOPT_LONG=yes
diff --git a/emulators/dynamips-devel/distinfo b/emulators/dynamips-devel/distinfo
index eb9f57eadc9e..3d4350949f98 100644
--- a/emulators/dynamips-devel/distinfo
+++ b/emulators/dynamips-devel/distinfo
@@ -1,3 +1,3 @@
-MD5 (dynamips-0.2.7-RC3.tar.gz) = 9d1d5ab929fda30ea3b4b8d9284edc70
-SHA256 (dynamips-0.2.7-RC3.tar.gz) = cd1d23fa0122bcec70a4028ce60ae100fbe3d7a599f1bbb1f30f34faa35546c1
-SIZE (dynamips-0.2.7-RC3.tar.gz) = 522645
+MD5 (dynamips-0.2.8-RC1.tar.gz) = 39d08f2d20cdd78ef05c50ae86c4b522
+SHA256 (dynamips-0.2.8-RC1.tar.gz) = 266cd3fe12f643f8c6aaf59ec8b99b20d6fb53ed8032c1984477065ca97ee994
+SIZE (dynamips-0.2.8-RC1.tar.gz) = 569599
diff --git a/emulators/dynamips-devel/files/patch-Makefile b/emulators/dynamips-devel/files/patch-Makefile
index 18f63ba9e554..47fab52596c5 100644
--- a/emulators/dynamips-devel/files/patch-Makefile
+++ b/emulators/dynamips-devel/files/patch-Makefile
@@ -1,34 +1,10 @@
---- Makefile.orig Thu Feb 8 15:23:36 2007
-+++ Makefile Thu Feb 8 15:34:39 2007
-@@ -12,6 +12,9 @@
- # (WinPcap is used for Cygwin)
- HAS_PCAP?=1
-
-+# Change this to 1 if your system has posix_memalign
-+HAS_POSIX_MEMALIGN?=0
-+
- # Current dynamips release
- VERSION_TRAIN=0.2.6
- VERSION_SUB=-RC5
-@@ -34,16 +37,17 @@
- -DJIT_ARCH=\"$(DYNAMIPS_ARCH)\" \
- -DARCH_INC_FILE=$(ARCH_INC_FILE) -DDYNAMIPS_VERSION=\"$(VERSION)\" \
- -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE \
-- -DHAS_RFC2553=$(HAS_RFC2553)
-+ -DHAS_RFC2553=$(HAS_RFC2553) -DHAS_POSIX_MEMALIGN=$(HAS_POSIX_MEMALIGN)
-
--PCAP_LIB=/usr/local/lib/libpcap.a
--#PCAP_LIB=-lpcap
-+#PCAP_LIB=/usr/local/lib/libpcap.a
-+PCAP_LIB=-lpcap
-
- ifeq ($(shell uname), FreeBSD)
- PTHREAD_LIBS?=-pthread
-- CFLAGS+=-I/usr/local/include -I/usr/local/include/libelf $(PTHREAD_CFLAGS) \
-+ LOCALBASE?=/usr/local
-+ CFLAGS+=-I$(LOCALBASE)/include -I$(LOCALBASE)/include/libelf $(PTHREAD_CFLAGS) \
- -D_FILE_OFFSET_BITS=64
-- LIBS=-L/usr/local/lib -L. -lelf $(PTHREAD_LIBS)
+--- Makefile.orig Thu Sep 13 19:55:14 2007
++++ Makefile Thu Sep 13 19:55:30 2007
+@@ -52,7 +52,7 @@
+ LOCALBASE?=/usr/local
+ CFLAGS+=-I$(LOCALBASE)/include -I$(LOCALBASE)/include/libelf \
+ $(PTHREAD_CFLAGS) -D_FILE_OFFSET_BITS=64
+- LIBS=-L$(LOCALBASE)/lib -L. -ldl -lelf $(PTHREAD_LIBS) $(LDFLAGS)
+ LIBS=-L$(LOCALBASE)/lib -L. -lelf $(PTHREAD_LIBS) $(LDFLAGS)
else
ifeq ($(shell uname), Linux)
diff --git a/emulators/dynamips-devel/files/patch-README b/emulators/dynamips-devel/files/patch-README
index 4b092b6bc69b..3ed2557be73f 100644
--- a/emulators/dynamips-devel/files/patch-README
+++ b/emulators/dynamips-devel/files/patch-README
@@ -1,6 +1,6 @@
---- README.orig Fri Apr 6 20:53:59 2007
-+++ README Fri Apr 6 20:57:02 2007
-@@ -50,7 +50,7 @@
+--- README.orig Wed Sep 12 14:35:13 2007
++++ README Thu Sep 13 19:47:58 2007
+@@ -52,11 +52,12 @@
-R <rom_file> : Load an alternate ROM (default: embedded)
-k <clock_div> : Set the clock divisor (default: 4)
@@ -9,3 +9,8 @@
-U <si_desc> : Console in on serial interface <si_desc>
(default is on the terminal)
+ -A <port> : AUX is on TCP <port>
++ (AUX binding IP == Console binding IP)
+ -B <si_desc> : AUX is on serial interface <si_desc>
+ (default is no AUX port)
+
diff --git a/emulators/dynamips-devel/files/patch-README.hypervisor b/emulators/dynamips-devel/files/patch-README.hypervisor
deleted file mode 100644
index 6575388ea27d..000000000000
--- a/emulators/dynamips-devel/files/patch-README.hypervisor
+++ /dev/null
@@ -1,11 +0,0 @@
---- README.hypervisor.orig Wed Mar 21 10:00:28 2007
-+++ README.hypervisor Wed Mar 21 10:01:22 2007
-@@ -8,7 +8,7 @@
- Running dynamips in hypervisor mode
- ===================================
-
--dynamips -H <tcp_port>
-+dynamips -H [ip_address:]<tcp_port>
-
- Managing the hypervisor
- =======================
diff --git a/emulators/dynamips-devel/files/patch-dev_vtty.c b/emulators/dynamips-devel/files/patch-dev_vtty.c
index e99df79b2592..5ae681aef706 100644
--- a/emulators/dynamips-devel/files/patch-dev_vtty.c
+++ b/emulators/dynamips-devel/files/patch-dev_vtty.c
@@ -1,5 +1,5 @@
---- dev_vtty.c.orig Fri Apr 6 16:44:07 2007
-+++ dev_vtty.c Fri Apr 6 19:43:37 2007
+--- dev_vtty.c.orig Fri Sep 7 12:03:11 2007
++++ dev_vtty.c Fri Sep 14 10:24:02 2007
@@ -24,6 +24,8 @@
#include <fcntl.h>
#include <errno.h>
@@ -13,21 +13,18 @@
#include "dev_c2600.h"
#include "dev_vtty.h"
-+extern char hypervisor_ip_address[];
++extern char *hypervisor_ip_address;
+
/* VTTY list */
static pthread_mutex_t vtty_list_mutex = PTHREAD_MUTEX_INITIALIZER;
static vtty_t *vtty_list = NULL;
-@@ -132,7 +136,11 @@
+@@ -132,7 +136,8 @@
memset(&serv,0,sizeof(serv));
serv.sin_family = AF_INET;
- serv.sin_addr.s_addr = htonl(INADDR_ANY);
-+ if (strlen(hypervisor_ip_address) != 0 &&
-+ inet_addr(hypervisor_ip_address) != INADDR_NONE)
-+ serv.sin_addr.s_addr = inet_addr(hypervisor_ip_address);
-+ else
-+ serv.sin_addr.s_addr = htonl(INADDR_ANY);
++ if (hypervisor_ip_address && strlen(hypervisor_ip_address))
++ serv.sin_addr.s_addr = inet_addr(hypervisor_ip_address);
serv.sin_port = htons(vtty->tcp_port);
if (bind(vtty->accept_fd,(struct sockaddr *)&serv,sizeof(serv)) < 0) {
diff --git a/emulators/dynamips-devel/files/patch-dynamips.1 b/emulators/dynamips-devel/files/patch-dynamips.1
index cfa724c388d8..e8431179b2ee 100644
--- a/emulators/dynamips-devel/files/patch-dynamips.1
+++ b/emulators/dynamips-devel/files/patch-dynamips.1
@@ -1,11 +1,11 @@
---- dynamips.1.orig Wed Feb 14 20:37:58 2007
-+++ dynamips.1 Fri Apr 6 20:59:41 2007
+--- dynamips.1.orig Thu Sep 13 18:45:02 2007
++++ dynamips.1 Thu Sep 13 19:45:49 2007
@@ -44,7 +44,7 @@
.SH OPTIONS
A summary of options is included below.
.TP
-.B -H <tcp_port>
-+.B -H [ip_address:]<tcp_port>
++.B -H [<ip_address>:]<tcp_port>
Enable hypervisor mode.
.br
The hypervisor mode of dynamips allows you to run simultaneously
@@ -14,7 +14,15 @@
.TP
-.B -T <port>
-+.B -T [ip_address:]<port>
++.B -T [<ip_address>:]<port>
Console is on TCP <port>
.TP
.B -U <si_desc>
+@@ -141,6 +141,7 @@
+ .TP
+ .B -A <port>
+ AUX is on TCP <port>
++AUX binding IP == Console binding IP
+ .TP
+ .B -B <si_desc>
+ AUX is on serial interface <si_desc> (default is no AUX port)
diff --git a/emulators/dynamips-devel/files/patch-dynamips.c b/emulators/dynamips-devel/files/patch-dynamips.c
index a2631b8f28be..d21756542a79 100644
--- a/emulators/dynamips-devel/files/patch-dynamips.c
+++ b/emulators/dynamips-devel/files/patch-dynamips.c
@@ -1,87 +1,56 @@
---- dynamips.c.orig Wed Feb 14 20:37:58 2007
-+++ dynamips.c Fri Apr 6 21:11:38 2007
-@@ -61,6 +61,7 @@
- /* Hypervisor */
- int hypervisor_mode = 0;
- int hypervisor_tcp_port = 0;
-+char hypervisor_ip_address[263]="\000"; /* 256(MAXHOSTNAMELEN)+1(:)+5(port)+NULL */
-
- /* Log file */
- char *log_file_name = NULL;
-@@ -227,7 +228,7 @@
- printf("Usage: %s [options] <ios_image>\n\n",argv[0]);
-
- printf("Available options:\n"
-- " -H <tcp_port> : Run in hypervisor mode\n\n"
-+ " -H [ip_address:]<tcp_port> : Run in hypervisor mode\n\n"
- " -P <platform> : Platform to emulate (7200, 3600, "
- "2691, 3725 or 3745) "
- "(default: 7200)\n\n"
-@@ -254,7 +255,7 @@
+--- dynamips.c.orig Fri Sep 7 12:03:11 2007
++++ dynamips.c Fri Sep 14 10:18:10 2007
+@@ -193,7 +193,7 @@
" -R <rom_file> : Load an alternate ROM (default: embedded)\n"
" -k <clock_div> : Set the clock divisor (default: %d)\n"
"\n"
- " -T <port> : Console is on TCP <port>\n"
-+ " -T [ip_address:]<port> : Console is on TCP <port>\n"
++ " -T [<ip_address>:]<port> : Console is on TCP <port>\n"
" -U <si_desc> : Console in on serial interface <si_desc>\n"
" (default is on the terminal)\n"
"\n"
-@@ -780,6 +781,7 @@
+@@ -374,6 +374,8 @@
int instance_id;
- int res,option;
+ int option;
char *str;
+ char *index;
++ size_t len;
/* Get the instance ID */
instance_id = 0;
-@@ -944,7 +946,15 @@
+@@ -541,7 +543,25 @@
/* TCP server for Console Port */
case 'T':
vm->vtty_con_type = VTTY_TYPE_TCP;
- vm->vtty_con_tcp_port = atoi(optarg);
-+ strncpy(hypervisor_ip_address,optarg,sizeof(hypervisor_ip_address));
-+ index=strrchr(hypervisor_ip_address,':');
-+ if (index != NULL) {
-+ *index++='\000';
-+ vm->vtty_con_tcp_port = atoi(index);
-+ } else {
-+ vm->vtty_con_tcp_port = atoi(hypervisor_ip_address);
-+ hypervisor_ip_address[0]='\000';
-+ }
++
++ index = strrchr(optarg,':');
++
++ if (!index) {
++ vm->vtty_con_tcp_port = atoi(optarg);
++ } else {
++ len = index - optarg;
++ hypervisor_ip_address = malloc(len + 1);
++
++ if (!hypervisor_ip_address) {
++ fprintf(stderr,"Unable to set console IP address!\n");
++ exit(EXIT_FAILURE);
++ }
++
++ memcpy(hypervisor_ip_address,optarg,len);
++ hypervisor_ip_address[len] = '\0';
++
++ vm->vtty_con_tcp_port = atoi(++index);
++ }
break;
/* Serial interface for Console port */
-@@ -1061,6 +1071,7 @@
- static int run_hypervisor(int argc,char *argv[])
- {
- char *options_list = "H:l:hN:";
-+ char *index;
- int i,option;
+@@ -687,6 +707,8 @@
- for(i=1;i<argc;i++)
-@@ -1079,7 +1090,15 @@
- {
- /* Hypervisor TCP port */
- case 'H':
-- hypervisor_tcp_port = atoi(optarg);
-+ strncpy(hypervisor_ip_address,optarg,sizeof(hypervisor_ip_address));
-+ index=strrchr(hypervisor_ip_address,':');
-+ if (index != NULL) {
-+ *index++='\000';
-+ hypervisor_tcp_port = atoi(index);
-+ } else {
-+ hypervisor_tcp_port = atoi(hypervisor_ip_address);
-+ hypervisor_ip_address[0]='\000';
-+ }
+ memcpy(hypervisor_ip_address,optarg,len);
+ hypervisor_ip_address[len] = '\0';
++
++ hypervisor_tcp_port = atoi(++index);
+ }
break;
- /* Log file */
-@@ -1244,7 +1263,7 @@
- /* Free resources used by instance */
- vm_release(vm);
- } else {
-- hypervisor_tcp_server(hypervisor_tcp_port);
-+ hypervisor_tcp_server(hypervisor_ip_address,hypervisor_tcp_port);
- }
-
- dynamips_reset();
diff --git a/emulators/dynamips-devel/files/patch-hypervisor.c b/emulators/dynamips-devel/files/patch-hypervisor.c
deleted file mode 100644
index d3e5cbf09360..000000000000
--- a/emulators/dynamips-devel/files/patch-hypervisor.c
+++ /dev/null
@@ -1,20 +0,0 @@
---- hypervisor.c.orig Wed Mar 21 11:11:12 2007
-+++ hypervisor.c Wed Mar 21 11:29:55 2007
-@@ -535,7 +535,7 @@
- }
-
- /* Hypervisor TCP server */
--int hypervisor_tcp_server(int tcp_port)
-+int hypervisor_tcp_server(char* ip_address,int tcp_port)
- {
- int fd_array[HYPERVISOR_MAX_FD];
- struct sockaddr_storage remote_addr;
-@@ -565,7 +565,7 @@
- if (!tcp_port)
- tcp_port = HYPERVISOR_TCP_PORT;
-
-- fd_count = ip_listen(tcp_port,SOCK_STREAM,HYPERVISOR_MAX_FD,fd_array);
-+ fd_count = ip_listen(ip_address,tcp_port,SOCK_STREAM,HYPERVISOR_MAX_FD,fd_array);
-
- if (fd_count <= 0) {
- fprintf(stderr,"Hypervisor: unable to create TCP sockets.\n");
diff --git a/emulators/dynamips-devel/files/patch-hypervisor.h b/emulators/dynamips-devel/files/patch-hypervisor.h
deleted file mode 100644
index 2b7458bd5aaf..000000000000
--- a/emulators/dynamips-devel/files/patch-hypervisor.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- hypervisor.h.orig Wed Mar 21 10:58:06 2007
-+++ hypervisor.h Wed Mar 21 11:09:40 2007
-@@ -136,6 +136,6 @@
- int hypervisor_stopsig(void);
-
- /* Hypervisor TCP server */
--int hypervisor_tcp_server(int tcp_port);
-+int hypervisor_tcp_server(char *ip_address,int tcp_port);
-
- #endif
diff --git a/emulators/dynamips-devel/files/patch-net.c b/emulators/dynamips-devel/files/patch-net.c
deleted file mode 100644
index 155b2c913433..000000000000
--- a/emulators/dynamips-devel/files/patch-net.c
+++ /dev/null
@@ -1,38 +0,0 @@
---- net.c.orig Wed Mar 21 11:34:17 2007
-+++ net.c Wed Mar 21 11:55:29 2007
-@@ -353,7 +353,7 @@
-
- #if HAS_RFC2553
- /* Listen on the specified port */
--int ip_listen(int port,int sock_type,int max_fd,int fd_array[])
-+int ip_listen(char *ip_address,int port,int sock_type,int max_fd,int fd_array[])
- {
- struct addrinfo hints,*res,*res0;
- char port_str[20];
-@@ -370,7 +370,7 @@
-
- snprintf(port_str,sizeof(port_str),"%d",port);
-
-- if ((error = getaddrinfo(NULL,port_str,&hints,&res0)) != 0) {
-+ if ((error = getaddrinfo((strlen(ip_address)==0)?NULL:ip_address,port_str,&hints,&res0)) != 0) {
- fprintf(stderr,"ip_listen: %s", gai_strerror(error));
- return(-1);
- }
-@@ -405,7 +405,7 @@
- }
- #else
- /* Listen on the specified port */
--int ip_listen(int port,int sock_type,int max_fd,int fd_array[])
-+int ip_listen(char *ip_address,int port,int sock_type,int max_fd,int fd_array[])
- {
- struct sockaddr_in sin;
- int i,sck,reuse=1;
-@@ -422,6 +422,8 @@
- memset(&sin,0,sizeof(sin));
- sin.sin_family = PF_INET;
- sin.sin_port = htons(port);
-+ if (strlen(ip_address) != 0 && inet_addr(ip_address) != INADDR_NONE)
-+ sin.sin_addr = inet_addr(ip_address);
-
- setsockopt(fd_array[0],SOL_SOCKET,SO_REUSEADDR,&reuse,sizeof(reuse));
-
diff --git a/emulators/dynamips-devel/files/patch-net.h b/emulators/dynamips-devel/files/patch-net.h
deleted file mode 100644
index c464eda2bac6..000000000000
--- a/emulators/dynamips-devel/files/patch-net.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- net.h.orig Wed Mar 21 11:32:05 2007
-+++ net.h Wed Mar 21 11:33:28 2007
-@@ -218,6 +218,6 @@
- int udp_connect(int local_port,char *remote_host,int remote_port);
-
- /* Listen on the specified port */
--int ip_listen(int port,int sock_type,int max_fd,int fd_array[]);
-+int ip_listen(char *ip_address,int port,int sock_type,int max_fd,int fd_array[]);
-
- #endif
diff --git a/emulators/dynamips-devel/files/patch-utils.c b/emulators/dynamips-devel/files/patch-utils.c
deleted file mode 100644
index 970f89eb2e78..000000000000
--- a/emulators/dynamips-devel/files/patch-utils.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- utils.c.orig Wed Mar 8 22:53:21 2006
-+++ utils.c Wed Mar 8 22:53:37 2006
-@@ -187,7 +187,7 @@
- {
- void *p;
-
--#ifdef __linux__
-+#if defined(__linux__) || HAS_POSIX_MEMALIGN
- if (posix_memalign((void *)&p,boundary,size))
- #else
- #ifdef __CYGWIN__
diff --git a/emulators/dynamips-devel/files/patch-utils.h b/emulators/dynamips-devel/files/patch-utils.h
deleted file mode 100644
index f3219655f78b..000000000000
--- a/emulators/dynamips-devel/files/patch-utils.h
+++ /dev/null
@@ -1,20 +0,0 @@
---- utils.h.orig Wed Feb 14 20:37:58 2007
-+++ utils.h Tue Feb 20 18:56:54 2007
-@@ -12,6 +12,8 @@
- #include <sys/time.h>
- #include <time.h>
- #include <netinet/in.h>
-+#include <pthread.h>
-+#include <signal.h>
-
- /* True/False definitions */
- #ifndef FALSE
-@@ -35,6 +37,8 @@
- #elif defined(__i386) || defined(__i386__) || defined(i386)
- #define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
- #elif defined(__x86_64__)
-+#define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
-+#elif defined(__ia64__)
- #define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
- #endif
-