Support IPv6.

Submitted by:	Takenori Kobayashi <nori@3si.co.jp>
No response from: maintainer
This commit is contained in:
Munechika SUMIKAWA 2002-03-24 08:22:52 +00:00
parent c3cbac4e38
commit fd1e56fd98
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=56524
8 changed files with 162 additions and 4 deletions

View file

@ -7,7 +7,8 @@
PORTNAME= vic
PORTVERSION= 2.8.1.1.3
CATEGORIES= mbone tk83
PORTREVISION= 1
CATEGORIES= mbone tk83 ipv6
MASTER_SITES= http://www-mice.cs.ucl.ac.uk/multimedia/software/vic/2.8ucl-1.1.3/
DISTNAME= ${PORTNAME}-2.8ucl-1.1.3
@ -25,7 +26,8 @@ CONFIGURE_ARGS= -x-libraries=${PREFIX}/lib \
-without-ucltcl \
-with-tcl=${LOCALBASE} \
-without-ucltk \
-with-tk=${LOCALBASE}
-with-tk=${LOCALBASE} \
-enable-ipv6
MAN1= vic.1
pre-patch:

View file

@ -0,0 +1,14 @@
--- net/inet6.c.org Mon Feb 4 17:51:32 2002
+++ net/inet6.c Mon Feb 4 17:52:02 2002
@@ -64,11 +64,7 @@
memcpy(addr->s6_addr, &(((struct sockaddr_in6 *)(ai->ai_addr))->sin6_addr), sizeof(struct in6_addr));
return (0);
#else
-#ifdef MUSICA_IPV6
hp = gethostbyname2(hostname, AF_INET6);
-#else
- hp = getnodebyname(hostname, AF_INET6,AI_DEFAULT);
-#endif /*MUSICA_IPV6*/
#endif /*LINUX_IPV6*/
#endif /*SOLARIS7_IPV6*/
if (hp == 0) return (-1);

View file

@ -0,0 +1,34 @@
--- net/inet6.h.org Mon Feb 4 17:51:39 2002
+++ net/inet6.h Mon Feb 4 17:52:02 2002
@@ -44,7 +44,6 @@
#define vic_inet6_h
#ifdef HAVE_IPV6
-
#include <sys/types.h>
#ifdef WIN32
//#include <winsock.h>
@@ -62,10 +61,23 @@
}
#else
#include <netinet/in.h>
+#include <netinet6/in6.h>
#endif
#endif
#ifndef WIN32
#include <arpa/inet.h>
+#ifdef _NETINET6_IN6_H_
+#ifndef IPV6_ADD_MEMBERSHIP
+#ifdef IPV6_JOIN_GROUP
+#define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP
+#endif /* IPV6_JOIN_GROUP */
+#endif /* IPV6_ADD_MEMBERSHIP */
+#ifndef IPV6_DROP_MEMBERSHIP
+#ifdef IPV6_LEAVE_GROUP
+#define IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP
+#endif /* IPV6_LEAVE_GROUP */
+#endif /* IPV6_DROP_MEMBERSHIP */
+#endif /* _NETINET6_IN6_H_ */
#endif
#include "config.h"

View file

@ -0,0 +1,29 @@
--- net/net-ipv6.cpp.org Mon Feb 4 17:51:46 2002
+++ net/net-ipv6.cpp Mon Feb 4 17:52:08 2002
@@ -277,7 +277,7 @@
p->sin6_family = AF_INET6;
int len = sizeof(*p), result = 0;
- if ((result = getsockname(ssock_, (struct sockaddr *)p, &len)) < 0) {
+ if ((result = getsockname(ssock_, (struct sockaddr *)p, (socklen_t *)&len)) < 0) {
perror("getsockname");
p->sin6_addr = in6addr_any;
p->sin6_port = 0;
@@ -364,7 +364,7 @@
* with bated breath.
*/
#if defined(__FreeBSD__)
- struct oipv6_mreq mr;
+ struct ipv6_mreq mr;
#else
struct ipv6_mreq mr;
#endif
@@ -522,7 +522,7 @@
sockaddr_in6 sfrom;
int fromlen = sizeof(sfrom);
int cc = ::recvfrom(fd, (char*)buf, len, 0,
- (sockaddr*)&sfrom, &fromlen);
+ (sockaddr*)&sfrom, (socklen_t *)&fromlen);
if (cc < 0) {
if (errno != EWOULDBLOCK)
perror("recvfrom");

View file

@ -7,7 +7,8 @@
PORTNAME= vic
PORTVERSION= 2.8.1.1.3
CATEGORIES= mbone tk83
PORTREVISION= 1
CATEGORIES= mbone tk83 ipv6
MASTER_SITES= http://www-mice.cs.ucl.ac.uk/multimedia/software/vic/2.8ucl-1.1.3/
DISTNAME= ${PORTNAME}-2.8ucl-1.1.3
@ -25,7 +26,8 @@ CONFIGURE_ARGS= -x-libraries=${PREFIX}/lib \
-without-ucltcl \
-with-tcl=${LOCALBASE} \
-without-ucltk \
-with-tk=${LOCALBASE}
-with-tk=${LOCALBASE} \
-enable-ipv6
MAN1= vic.1
pre-patch:

View file

@ -0,0 +1,14 @@
--- net/inet6.c.org Mon Feb 4 17:51:32 2002
+++ net/inet6.c Mon Feb 4 17:52:02 2002
@@ -64,11 +64,7 @@
memcpy(addr->s6_addr, &(((struct sockaddr_in6 *)(ai->ai_addr))->sin6_addr), sizeof(struct in6_addr));
return (0);
#else
-#ifdef MUSICA_IPV6
hp = gethostbyname2(hostname, AF_INET6);
-#else
- hp = getnodebyname(hostname, AF_INET6,AI_DEFAULT);
-#endif /*MUSICA_IPV6*/
#endif /*LINUX_IPV6*/
#endif /*SOLARIS7_IPV6*/
if (hp == 0) return (-1);

View file

@ -0,0 +1,34 @@
--- net/inet6.h.org Mon Feb 4 17:51:39 2002
+++ net/inet6.h Mon Feb 4 17:52:02 2002
@@ -44,7 +44,6 @@
#define vic_inet6_h
#ifdef HAVE_IPV6
-
#include <sys/types.h>
#ifdef WIN32
//#include <winsock.h>
@@ -62,10 +61,23 @@
}
#else
#include <netinet/in.h>
+#include <netinet6/in6.h>
#endif
#endif
#ifndef WIN32
#include <arpa/inet.h>
+#ifdef _NETINET6_IN6_H_
+#ifndef IPV6_ADD_MEMBERSHIP
+#ifdef IPV6_JOIN_GROUP
+#define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP
+#endif /* IPV6_JOIN_GROUP */
+#endif /* IPV6_ADD_MEMBERSHIP */
+#ifndef IPV6_DROP_MEMBERSHIP
+#ifdef IPV6_LEAVE_GROUP
+#define IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP
+#endif /* IPV6_LEAVE_GROUP */
+#endif /* IPV6_DROP_MEMBERSHIP */
+#endif /* _NETINET6_IN6_H_ */
#endif
#include "config.h"

View file

@ -0,0 +1,29 @@
--- net/net-ipv6.cpp.org Mon Feb 4 17:51:46 2002
+++ net/net-ipv6.cpp Mon Feb 4 17:52:08 2002
@@ -277,7 +277,7 @@
p->sin6_family = AF_INET6;
int len = sizeof(*p), result = 0;
- if ((result = getsockname(ssock_, (struct sockaddr *)p, &len)) < 0) {
+ if ((result = getsockname(ssock_, (struct sockaddr *)p, (socklen_t *)&len)) < 0) {
perror("getsockname");
p->sin6_addr = in6addr_any;
p->sin6_port = 0;
@@ -364,7 +364,7 @@
* with bated breath.
*/
#if defined(__FreeBSD__)
- struct oipv6_mreq mr;
+ struct ipv6_mreq mr;
#else
struct ipv6_mreq mr;
#endif
@@ -522,7 +522,7 @@
sockaddr_in6 sfrom;
int fromlen = sizeof(sfrom);
int cc = ::recvfrom(fd, (char*)buf, len, 0,
- (sockaddr*)&sfrom, &fromlen);
+ (sockaddr*)&sfrom, (socklen_t *)&fromlen);
if (cc < 0) {
if (errno != EWOULDBLOCK)
perror("recvfrom");