git: 4e8eb913c028 - main - net/vtun: Remove expired port

From: Rene Ladan <rene_at_FreeBSD.org>
Date: Mon, 30 Jun 2025 10:48:27 UTC
The branch main has been updated by rene:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4e8eb913c028615b07859c86c6f02069dc6dcbce

commit 4e8eb913c028615b07859c86c6f02069dc6dcbce
Author:     Rene Ladan <rene@FreeBSD.org>
AuthorDate: 2025-06-30 10:48:06 +0000
Commit:     Rene Ladan <rene@FreeBSD.org>
CommitDate: 2025-06-30 10:48:06 +0000

    net/vtun: Remove expired port
    
    2025-06-30 net/vtun: Upstream is dead and last release in 2016
---
 MOVED                                   |   1 +
 net/Makefile                            |   1 -
 net/vtun/Makefile                       |  61 ---------
 net/vtun/distinfo                       |   3 -
 net/vtun/files/patch-Makefile.in        |  54 --------
 net/vtun/files/patch-freebsd__tun_dev.c |  26 ----
 net/vtun/files/patch-lfd__encrypt.c     | 229 --------------------------------
 net/vtun/files/patch-main.c             |  82 ------------
 net/vtun/files/patch-vtund.8            |  33 -----
 net/vtun/files/vtunclient.in            |  53 --------
 net/vtun/files/vtund.in                 |  25 ----
 net/vtun/pkg-descr                      |  10 --
 net/vtun/pkg-plist                      |   9 --
 13 files changed, 1 insertion(+), 586 deletions(-)

diff --git a/MOVED b/MOVED
index 15c5f9af2db7..bca63505575d 100644
--- a/MOVED
+++ b/MOVED
@@ -4571,3 +4571,4 @@ japanese/fcitx5-anthy@original|japanese/fcitx5-anthy|2025-06-29|Has unflavorized
 japanese/fcitx5-anthy@unicode|japanese/fcitx5-anthy|2025-06-29|Has unflavorized: japanese/anthy was removed and only japanese/anthy-unicode is supported
 japanese/ibus-anthy@original|japanese/ibus-anthy|2025-06-29|Has unflavorized: japanese/anthy was removed and only japanese/anthy-unicode is supported
 japanese/ibus-anthy@unicode|japanese/ibus-anthy|2025-06-29|Has unflavorized: japanese/anthy was removed and only japanese/anthy-unicode is supported
+net/vtun||2025-06-30|Has expired: Upstream is dead and last release in 2016
diff --git a/net/Makefile b/net/Makefile
index 0e75b240cfe7..822d90300af5 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -1655,7 +1655,6 @@
     SUBDIR += vnstat
     SUBDIR += vortex
     SUBDIR += vpp
-    SUBDIR += vtun
     SUBDIR += wackamole
     SUBDIR += wakeonlan
     SUBDIR += wangle
diff --git a/net/vtun/Makefile b/net/vtun/Makefile
deleted file mode 100644
index 9202fd3980f7..000000000000
--- a/net/vtun/Makefile
+++ /dev/null
@@ -1,61 +0,0 @@
-PORTNAME=	vtun
-PORTVERSION=	3.0.4
-PORTREVISION=	9
-CATEGORIES=	net
-MASTER_SITES=	SF \
-		LOCAL/mat/vtun
-
-MAINTAINER=	ports@FreeBSD.org
-COMMENT=	Virtual Tunnels over TCP/IP networks with traffic shaping
-WWW=		https://vtun.sourceforge.net/
-
-LICENSE=	GPLv2
-
-DEPRECATED=	Upstream is dead and last release in 2016
-EXPIRATION_DATE=2025-06-30
-
-LIB_DEPENDS=	liblzo2.so:archivers/lzo2
-
-USES=		autoreconf localbase ssl
-USE_RC_SUBR=	vtunclient vtund
-GNU_CONFIGURE=	yes
-GNU_CONFIGURE_MANPREFIX=	${PREFIX}/share
-
-CONFIGURE_ARGS=	--localstatedir=/var \
-		--with-lzo-headers=${LOCALBASE}/include/lzo \
-		--with-lzo-lib=${LOCALBASE}/lib \
-		--with-ssl-headers=${OPENSSLINC} \
-		--with-ssl-lib=${OPENSSLLIB}
-CONFIGURE_ENV=	YACC=${YACC}
-
-ALL_TARGET=	vtund
-
-CFLAGS+=	-ansi -Wno-pointer-sign
-
-PORTDOCS=	ChangeLog Credits FAQ README README.LZO README.Setup \
-		README.Shaper TODO
-
-OPTIONS_DEFINE=	DOCS
-
-# Extended mode patches, obtained from
-# http://home.jp.FreeBSD.org/~simokawa/vtun-v6.html
-# are now dynamically enabled using the -e option.
-
-post-patch:
-	${REINPLACE_CMD} \
-		-e 's|$$\(SSL_HDR_DIR\)|$$\1 $$\1/openssl|g' \
-		-e 's|$$\(BLOWFISH_HDR_DIR\)|$$\1 $$SSL_HDR_DIR/openssl|g' \
-		${WRKSRC}/configure
-
-post-install:
-	${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/vtund
-	${INSTALL_DATA} ${WRKSRC}/vtund.conf ${STAGEDIR}${PREFIX}/etc/vtund.conf.sample
-	${MKDIR} ${STAGEDIR}${DOCSDIR}
-	${RLN} ${STAGEDIR}${PREFIX}/share/man/man8/vtund.8 ${STAGEDIR}${PREFIX}/share/man/man1/vtun.1
-
-post-install-DOCS-on:
-.for doc in ${PORTDOCS}
-	${INSTALL_DATA} ${WRKSRC}/${doc} ${STAGEDIR}${DOCSDIR}
-.endfor
-
-.include <bsd.port.mk>
diff --git a/net/vtun/distinfo b/net/vtun/distinfo
deleted file mode 100644
index c5562efed6d5..000000000000
--- a/net/vtun/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1573738292
-SHA256 (vtun-3.0.4.tar.gz) = abf8df6b15e3febeaaeae2ce24ead7105eb1537ad4ec0d830c83cbb684fd98b9
-SIZE (vtun-3.0.4.tar.gz) = 132691
diff --git a/net/vtun/files/patch-Makefile.in b/net/vtun/files/patch-Makefile.in
deleted file mode 100644
index 3d6ddf3d4e56..000000000000
--- a/net/vtun/files/patch-Makefile.in
+++ /dev/null
@@ -1,54 +0,0 @@
-Cleanup install procedure.
-
---- Makefile.in.orig	2016-10-01 21:46:00 UTC
-+++ Makefile.in
-@@ -28,7 +28,7 @@ LEX = @LEX@
- LEXFLAGS = -t 
- 
- INSTALL = @INSTALL@
--INSTALL_OWNER = -o root -g 0
-+INSTALL_OWNER =
- 
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-@@ -55,7 +55,7 @@ OBJS = main.o cfg_file.tab.o cfg_file.lex.o server.o c
- 
- CONFIGURE_FILES = Makefile config.status config.cache config.h config.log 
- 
--%.o: %.c vtun.h lib.h
-+.c.o:
- 	$(CC) $(CFLAGS) $(DEFS) -c $<
- 
- vtund: $(OBJS)
-@@ -80,25 +80,25 @@ distclean: clean
- 	rm -f `cat vtun.drivers`	
- 
- install_man: 
--	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(MAN_DIR)/man8
-+#	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(MAN_DIR)/man8
- 	$(INSTALL) -m 644 $(INSTALL_OWNER) vtund.8 $(DESTDIR)$(MAN_DIR)/man8
--	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(MAN_DIR)/man5
-+#	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(MAN_DIR)/man5
- 	$(INSTALL) -m 644 $(INSTALL_OWNER) vtund.conf.5 $(DESTDIR)$(MAN_DIR)/man5
- 	rm -f $(DESTDIR)$(MAN_DIR)/man8/vtun.8 
- 	ln -s vtund.8 $(DESTDIR)$(MAN_DIR)/man8/vtun.8 
- 
- install_config: 
--	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(ETC_DIR)
-+#	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(ETC_DIR)
- 	if [ ! -f $(ETC_DIR)/vtund.conf ]; then \
- 	  $(INSTALL) -m 600 $(INSTALL_OWNER) vtund.conf $(DESTDIR)$(ETC_DIR); \
- 	fi
- 
- install: vtund install_config install_man
--	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(VAR_DIR)/run
-+#	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(VAR_DIR)/run
- 	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(STAT_DIR)
- 	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(LOCK_DIR)
--	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(SBIN_DIR)
-+#	$(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(SBIN_DIR)
- 	$(INSTALL) -m 755 $(INSTALL_OWNER) vtund $(DESTDIR)$(SBIN_DIR)
--	$(BIN_DIR)/strip $(DESTDIR)$(SBIN_DIR)/vtund
-+	/usr/bin/strip $(DESTDIR)$(SBIN_DIR)/vtund
- 
- # DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/net/vtun/files/patch-freebsd__tun_dev.c b/net/vtun/files/patch-freebsd__tun_dev.c
deleted file mode 100644
index 7076427caa17..000000000000
--- a/net/vtun/files/patch-freebsd__tun_dev.c
+++ /dev/null
@@ -1,26 +0,0 @@
-Part of extended mode being an argument and not a compile time decision.
-
---- freebsd/tun_dev.c.orig	2016-10-01 21:46:01 UTC
-+++ freebsd/tun_dev.c
-@@ -35,6 +35,8 @@
- #include "vtun.h"
- #include "lib.h"
- 
-+extern int extended_mode;
-+
- /* 
-  * Allocate TUN device, returns opened fd. 
-  * Stores dev name in the first arg(must be large enough).
-@@ -58,10 +60,8 @@ int tun_open(char *dev)
-        }
-     }
-     if( fd > -1 ){
--       i=0;
--       /* Disable extended modes */
--       ioctl(fd, TUNSLMODE, &i);	
--       ioctl(fd, TUNSIFHEAD, &i);
-+       ioctl(fd, TUNSLMODE, &extended_mode);	
-+       ioctl(fd, TUNSIFHEAD, &extended_mode);
-     }	
-     return fd;
- }
diff --git a/net/vtun/files/patch-lfd__encrypt.c b/net/vtun/files/patch-lfd__encrypt.c
deleted file mode 100644
index 319e3f95ef79..000000000000
--- a/net/vtun/files/patch-lfd__encrypt.c
+++ /dev/null
@@ -1,229 +0,0 @@
---- lfd_encrypt.c.orig	2013-07-07 19:54:35 UTC
-+++ lfd_encrypt.c
-@@ -95,11 +95,11 @@ static unsigned long sequence_num;
- static char * pkey;
- static char * iv_buf;
- 
--static EVP_CIPHER_CTX ctx_enc;	/* encrypt */
--static EVP_CIPHER_CTX ctx_dec;	/* decrypt */
-+static EVP_CIPHER_CTX *ctx_enc;	/* encrypt */
-+static EVP_CIPHER_CTX *ctx_dec;	/* decrypt */
- 
--static EVP_CIPHER_CTX ctx_enc_ecb;	/* sideband ecb encrypt */
--static EVP_CIPHER_CTX ctx_dec_ecb;	/* sideband ecb decrypt */
-+static EVP_CIPHER_CTX *ctx_enc_ecb;	/* sideband ecb encrypt */
-+static EVP_CIPHER_CTX *ctx_dec_ecb;	/* sideband ecb decrypt */
- 
- static int send_msg(int len, char *in, char **out);
- static int recv_msg(int len, char *in, char **out);
-@@ -156,6 +156,11 @@ static int alloc_encrypt(struct vtun_host *host)
-    EVP_CIPHER_CTX *pctx_enc;
-    EVP_CIPHER_CTX *pctx_dec;
- 
-+   ctx_enc = EVP_CIPHER_CTX_new();
-+   ctx_dec = EVP_CIPHER_CTX_new();
-+   ctx_enc_ecb = EVP_CIPHER_CTX_new();
-+   ctx_dec_ecb = EVP_CIPHER_CTX_new();
-+
-    enc_init_first_time = 1;   
-    dec_init_first_time = 1;   
- 
-@@ -182,15 +187,15 @@ static int alloc_encrypt(struct vtun_host *host)
-          keysize = 32;
-          sb_init = 1;
-          cipher_type = EVP_aes_256_ecb();
--         pctx_enc = &ctx_enc_ecb;
--         pctx_dec = &ctx_dec_ecb;
-+         pctx_enc = ctx_enc_ecb;
-+         pctx_dec = ctx_dec_ecb;
-       break;
-       
-       case VTUN_ENC_AES256ECB:
-          blocksize = 16;
-          keysize = 32;
--         pctx_enc = &ctx_enc;
--         pctx_dec = &ctx_dec;
-+         pctx_enc = ctx_enc;
-+         pctx_dec = ctx_dec;
-          cipher_type = EVP_aes_256_ecb();
-          strcpy(cipher_name,"AES-256-ECB");
-       break;      
-@@ -201,14 +206,14 @@ static int alloc_encrypt(struct vtun_host *host)
-          keysize = 16;
-          sb_init=1;
-          cipher_type = EVP_aes_128_ecb();
--         pctx_enc = &ctx_enc_ecb;
--         pctx_dec = &ctx_dec_ecb;
-+         pctx_enc = ctx_enc_ecb;
-+         pctx_dec = ctx_dec_ecb;
-       break;
-       case VTUN_ENC_AES128ECB:
-          blocksize = 16;
-          keysize = 16;
--         pctx_enc = &ctx_enc;
--         pctx_dec = &ctx_dec;
-+         pctx_enc = ctx_enc;
-+         pctx_dec = ctx_dec;
-          cipher_type = EVP_aes_128_ecb();
-          strcpy(cipher_name,"AES-128-ECB");
-       break;
-@@ -221,16 +226,16 @@ static int alloc_encrypt(struct vtun_host *host)
-          var_key = 1;
-          sb_init = 1;
-          cipher_type = EVP_bf_ecb();
--         pctx_enc = &ctx_enc_ecb;
--         pctx_dec = &ctx_dec_ecb;
-+         pctx_enc = ctx_enc_ecb;
-+         pctx_dec = ctx_dec_ecb;
-       break;
- 
-       case VTUN_ENC_BF256ECB:
-          blocksize = 8;
-          keysize = 32;
-          var_key = 1;
--         pctx_enc = &ctx_enc;
--         pctx_dec = &ctx_dec;
-+         pctx_enc = ctx_enc;
-+         pctx_dec = ctx_dec;
-          cipher_type = EVP_bf_ecb();
-          strcpy(cipher_name,"Blowfish-256-ECB");
-       break;
-@@ -243,16 +248,16 @@ static int alloc_encrypt(struct vtun_host *host)
-          var_key = 1;
-          sb_init = 1;
-          cipher_type = EVP_bf_ecb();
--         pctx_enc = &ctx_enc_ecb;
--         pctx_dec = &ctx_dec_ecb;
-+         pctx_enc = ctx_enc_ecb;
-+         pctx_dec = ctx_dec_ecb;
-       break;
-       case VTUN_ENC_BF128ECB: /* blowfish 128 ecb is the default */
-       default:
-          blocksize = 8;
-          keysize = 16;
-          var_key = 1;
--         pctx_enc = &ctx_enc;
--         pctx_dec = &ctx_dec;
-+         pctx_enc = ctx_enc;
-+         pctx_dec = ctx_dec;
-          cipher_type = EVP_bf_ecb();
-          strcpy(cipher_name,"Blowfish-128-ECB");
-       break;
-@@ -294,10 +299,10 @@ static int free_encrypt()
-    lfd_free(enc_buf); enc_buf = NULL;
-    lfd_free(dec_buf); dec_buf = NULL;
- 
--   EVP_CIPHER_CTX_cleanup(&ctx_enc);
--   EVP_CIPHER_CTX_cleanup(&ctx_dec);
--   EVP_CIPHER_CTX_cleanup(&ctx_enc_ecb);
--   EVP_CIPHER_CTX_cleanup(&ctx_dec_ecb);
-+   EVP_CIPHER_CTX_cleanup(ctx_enc);
-+   EVP_CIPHER_CTX_cleanup(ctx_dec);
-+   EVP_CIPHER_CTX_cleanup(ctx_enc_ecb);
-+   EVP_CIPHER_CTX_cleanup(ctx_dec_ecb);
- 
-    return 0;
- }
-@@ -323,7 +328,7 @@ static int encrypt_buf(int len, char *in, char **out)
-    outlen=len+pad;
-    if (pad == blocksize)
-       RAND_bytes(in_ptr+len, blocksize-1);
--   EVP_EncryptUpdate(&ctx_enc, out_ptr, &outlen, in_ptr, len+pad);
-+   EVP_EncryptUpdate(ctx_enc, out_ptr, &outlen, in_ptr, len+pad);
-    *out = enc_buf;
- 
-    sequence_num++;
-@@ -343,7 +348,7 @@ static int decrypt_buf(int len, char *in, char **out)
- 
-    outlen=len;
-    if (!len) return 0;
--   EVP_DecryptUpdate(&ctx_dec, out_ptr, &outlen, in_ptr, len);
-+   EVP_DecryptUpdate(ctx_dec, out_ptr, &outlen, in_ptr, len);
-    recv_ib_mesg(&outlen, &out_ptr);
-    if (!outlen) return 0;
-    tmp_ptr = out_ptr + outlen; tmp_ptr--;
-@@ -431,13 +436,13 @@ static int cipher_enc_init(char * iv)
-       break;
-    } /* switch(cipher) */
- 
--   EVP_CIPHER_CTX_init(&ctx_enc);
--   EVP_EncryptInit_ex(&ctx_enc, cipher_type, NULL, NULL, NULL);
-+   EVP_CIPHER_CTX_init(ctx_enc);
-+   EVP_EncryptInit_ex(ctx_enc, cipher_type, NULL, NULL, NULL);
-    if (var_key)
--      EVP_CIPHER_CTX_set_key_length(&ctx_enc, keysize);
--   EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, pkey, NULL);
--   EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, NULL, iv);
--   EVP_CIPHER_CTX_set_padding(&ctx_enc, 0);
-+      EVP_CIPHER_CTX_set_key_length(ctx_enc, keysize);
-+   EVP_EncryptInit_ex(ctx_enc, NULL, NULL, pkey, NULL);
-+   EVP_EncryptInit_ex(ctx_enc, NULL, NULL, NULL, iv);
-+   EVP_CIPHER_CTX_set_padding(ctx_enc, 0);
-    if (enc_init_first_time)
-    {
-       sprintf(tmpstr,"%s encryption initialized", cipher_name);
-@@ -521,13 +526,13 @@ static int cipher_dec_init(char * iv)
-       break;
-    } /* switch(cipher) */
- 
--   EVP_CIPHER_CTX_init(&ctx_dec);
--   EVP_DecryptInit_ex(&ctx_dec, cipher_type, NULL, NULL, NULL);
-+   EVP_CIPHER_CTX_init(ctx_dec);
-+   EVP_DecryptInit_ex(ctx_dec, cipher_type, NULL, NULL, NULL);
-    if (var_key)
--      EVP_CIPHER_CTX_set_key_length(&ctx_dec, keysize);
--   EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, pkey, NULL);
--   EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, NULL, iv);
--   EVP_CIPHER_CTX_set_padding(&ctx_dec, 0);
-+      EVP_CIPHER_CTX_set_key_length(ctx_dec, keysize);
-+   EVP_DecryptInit_ex(ctx_dec, NULL, NULL, pkey, NULL);
-+   EVP_DecryptInit_ex(ctx_dec, NULL, NULL, NULL, iv);
-+   EVP_CIPHER_CTX_set_padding(ctx_dec, 0);
-    if (dec_init_first_time)
-    {
-       sprintf(tmpstr,"%s decryption initialized", cipher_name);
-@@ -559,7 +564,7 @@ static int send_msg(int len, char *in, char **out)
- 
-          in_ptr = in - blocksize*2;
-          outlen = blocksize*2;
--         EVP_EncryptUpdate(&ctx_enc_ecb, in_ptr, 
-+         EVP_EncryptUpdate(ctx_enc_ecb, in_ptr, 
-             &outlen, in_ptr, blocksize*2);
-          *out = in_ptr;
-          len = outlen;
-@@ -586,7 +591,7 @@ static int recv_msg(int len, char *in, char **out)
-          in_ptr = in;
-          iv = malloc(blocksize);
-          outlen = blocksize*2;
--         EVP_DecryptUpdate(&ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2);
-+         EVP_DecryptUpdate(ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2);
-          
-          if ( !strncmp(in_ptr, "ivec", 4) )
-          {
-@@ -629,7 +634,7 @@ static int recv_msg(int len, char *in, char **out)
-                if (cipher_enc_state != CIPHER_INIT)
-                {
-                   cipher_enc_state = CIPHER_INIT;
--                  EVP_CIPHER_CTX_cleanup(&ctx_enc);
-+                  EVP_CIPHER_CTX_cleanup(ctx_enc);
- #ifdef LFD_ENCRYPT_DEBUG
-                   vtun_syslog(LOG_INFO, 
-                      "Forcing local encryptor re-init");
-@@ -710,7 +715,7 @@ static int recv_ib_mesg(int *len, char **in)
-          if (cipher_enc_state != CIPHER_INIT)
-          {
-             cipher_enc_state = CIPHER_INIT;
--            EVP_CIPHER_CTX_cleanup(&ctx_enc);
-+            EVP_CIPHER_CTX_cleanup(ctx_enc);
-          }
- #ifdef LFD_ENCRYPT_DEBUG
-          vtun_syslog(LOG_INFO, "Remote requests encryptor re-init");
-@@ -724,7 +729,7 @@ static int recv_ib_mesg(int *len, char **in)
-              cipher_enc_state != CIPHER_REQ_INIT &&
-              cipher_enc_state != CIPHER_INIT)
-          {
--            EVP_CIPHER_CTX_cleanup (&ctx_dec);
-+            EVP_CIPHER_CTX_cleanup (ctx_dec);
-             cipher_dec_state = CIPHER_INIT;
-             cipher_enc_state = CIPHER_REQ_INIT;
-          }
diff --git a/net/vtun/files/patch-main.c b/net/vtun/files/patch-main.c
deleted file mode 100644
index 9b04a90810bc..000000000000
--- a/net/vtun/files/patch-main.c
+++ /dev/null
@@ -1,82 +0,0 @@
-Part of extended mode being an argument and not a compile time decision.
-Some bits about using vfork, or not, and pidfile as an argument.
-
---- main.c.orig	2013-07-07 20:31:22 UTC
-+++ main.c
-@@ -39,9 +39,9 @@
- #include "lib.h"
- #include "compat.h"
- 
--#define OPTSTRING "mif:P:L:t:npq"
-+#define OPTSTRING "mif:P:L:t:npqe"
- #ifdef HAVE_WORKING_FORK
--#  define SERVOPT_STRING "s"
-+#  define SERVOPT_STRING "sz:"
- #else
- #  define SERVOPT_STRING ""
- #endif
-@@ -57,6 +57,9 @@ static void usage(void);
- extern int optind,opterr,optopt;
- extern char *optarg;
- 
-+static char* pidfile = VTUN_PID_FILE;
-+int extended_mode = 0;
-+
- /* for the NATHack bit.  Is our UDP session connected? */
- int is_rmt_fd_connected=1; 
- 
-@@ -141,6 +144,14 @@ int main(int argc, char *argv[], char *env[])
- 	    case 'q':
- 		vtun.quiet = 1;
- 		break;
-+#ifdef HAVE_WORKING_FORK
-+	    case 'z':
-+		pidfile = strdup(optarg);
-+		break;
-+#endif
-+	    case 'e':
-+		extended_mode = 1;
-+		break;
- 	    default:
- 		usage();
- 	        exit(1);
-@@ -233,6 +244,9 @@ int main(int argc, char *argv[], char *env[])
- 	
- 	server(sock);
-      } else {	
-+#ifdef HAVE_WORKING_FORK
-+	write_pid();
-+#endif
-         init_title(argc,argv,env,"vtund[c]: ");
-         client(host);
-      }
-@@ -250,7 +264,7 @@ static void write_pid(void)
- {
-      FILE *f;
- 
--     if( !(f=fopen(VTUN_PID_FILE,"w")) ){
-+     if( !(f=fopen(pidfile,"w")) ){
-         vtun_syslog(LOG_ERR,"Can't write PID file");
-         return;
-      }
-@@ -273,12 +287,17 @@ static void usage(void)
-      printf("Usage: \n");
-      printf("  Server:\n");
- #ifdef HAVE_WORKING_FORK
--     printf("\tvtund <-s|-i> [-f file] [-P port] [-L local address]\n");
-+     printf("\tvtund <-s|-i> [-f file] [-P port] [-L local address] [-e] [-z pid_file ]\n");
- #else
--     printf("\tvtund <-i> [-f file] [-P port] [-L local address]\n");
-+     printf("\tvtund <-i> [-f file] [-P port] [-L local address] [-e]\n");
- #endif
-      printf("  Client:\n");
-      /* I don't think these work. I'm disabling the suggestion - bish 20050601*/
-+#ifdef HAVE_WORKING_FORK
-      printf("\tvtund [-f file] " /* [-P port] [-L local address] */
--	    "[-q] [-p] [-m] [-t timeout] <host profile> <server address>\n");
-+	    "[-q] [-p] [-m] [-t timeout] [-e] <host profile> <server address>\n");
-+#else
-+     printf("\tvtund [-f file] " /* [-P port] [-L local address] */
-+	    "[-q] [-p] [-m] [-t timeout] [-e] <host profile> <server address>\n");
-+#endif
- }
diff --git a/net/vtun/files/patch-vtund.8 b/net/vtun/files/patch-vtund.8
deleted file mode 100644
index dee1600dfb81..000000000000
--- a/net/vtun/files/patch-vtund.8
+++ /dev/null
@@ -1,33 +0,0 @@
-Part of extended mode being an argument and not a compile time decision.
-Some bits about using vfork, or not, and pidfile as an argument.
-
---- vtund.8.orig	2016-09-17 20:01:21 UTC
-+++ vtund.8
-@@ -48,6 +48,12 @@ vtund \- VTun(Virtual Tunnel) daemon.
- [ 
- .I -n 
- ] 
-+[ 
-+.I -e 
-+] 
-+[ 
-+.I -s pid_file 
-+] 
- <
- .I session 
- >
-@@ -115,6 +121,14 @@ Connect 
- .I timeout
- Default is 30 seconds. This options is equivalent to the 'timeout' option of
- config file.
-+.TP
-+.I -e
-+Use vtun-v6 extended mode.
-+.TP
-+.I -z pid_file
-+Connect 
-+.I z pid_file
-+The full pathname of the file containing the PID of the daemon in server mode.
- .TP
- .I session 
- Session name from the config file.
diff --git a/net/vtun/files/vtunclient.in b/net/vtun/files/vtunclient.in
deleted file mode 100644
index 3b3700d6f079..000000000000
--- a/net/vtun/files/vtunclient.in
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-
-# PROVIDE: vtunclient
-# REQUIRE: DAEMON
-# KEYWORD: shutdown
-#
-# Add the following line to /etc/rc.conf to enable vtunclient:
-#
-# vtunclient_enable="YES"
-# vtunclient_flags="<session> <server address>"
-#
-# If you want to use multiple connections, use $vtunclient_list.
-# Usual $vtunclient_flags will be ignored when $vtunclient_list is
-# set.
-#
-# vtunclient_enable="YES"
-# vtunclient_list="site1 site2"
-# vtunclient_site1_flags="<session> <server address>"
-# vtunclient_site1_pidfile="/var/run/vtun-site1.pid"
-# vtunclient_site2_flags="<session> <server address>"
-# vtunclient_site2_pidfile="/var/run/vtun-site2.pid"
-# ...
-#
-
-vtunclient_enable=${vtunclient_enable:-"NO"}
-
-. /etc/rc.subr
-
-name=vtunclient
-rcvar=vtunclient_enable
-required_files="%%PREFIX%%/etc/vtund.conf"
-
-command=%%PREFIX%%/sbin/vtund
-
-load_rc_config $name
-cmd="$1"
-if [ $# -gt 0 ]; then
-	shift
-fi
-if [ -n "$*" ]; then
-	vtunclient_list="$*"
-fi
-
-if [ -z "$vtunclient_list" ]; then
-	run_rc_command "$cmd"
-else
-	for _client in ${vtunclient_list}; do
-		eval vtunclient_flags=\$vtunclient_${_client}_flags
-		eval pidfile=\$vtunclient_${_client}_pidfile
-		vtunclient_flags="-z $pidfile $vtunclient_flags"
-		run_rc_command "$cmd"
-	done
-fi
diff --git a/net/vtun/files/vtund.in b/net/vtun/files/vtund.in
deleted file mode 100644
index e068a5f72e56..000000000000
--- a/net/vtun/files/vtund.in
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/sh
-
-# PROVIDE: vtund
-# REQUIRE: DAEMON
-# KEYWORD: shutdown
-#
-# Add the following line to /etc/rc.conf to enable vtund:
-#
-# vtund_enable="YES"
-#
-
-vtund_enable=${vtund_enable:-"NO"}
-vtund_flags=${vtund_flags:-"-s"}
-
-. /etc/rc.subr
-
-name=vtund
-rcvar=vtund_enable
-required_files="%%PREFIX%%/etc/vtund.conf"
-pidfile=/var/run/vtund.pid
-
-command=%%PREFIX%%/sbin/vtund
-
-load_rc_config $name
-run_rc_command "$1"
diff --git a/net/vtun/pkg-descr b/net/vtun/pkg-descr
deleted file mode 100644
index 1f58fa351b14..000000000000
--- a/net/vtun/pkg-descr
+++ /dev/null
@@ -1,10 +0,0 @@
-VTun provides the method for creating Virtual Tunnels over TCP/IP
-networks and allows to shape, compress, encrypt traffic in that
-tunnels.
-
-Supported type of tunnels are: PPP, IP, Ethernet and most of other
-serial protocols and programs.  VTun is easily and highly configurable,
-it can be used for various network task like VPN, Mobile IP, Shaped
-Internet access, IP address saving, etc.  It is completely user
-space implementation and does not require modification to any kernel
-parts.
diff --git a/net/vtun/pkg-plist b/net/vtun/pkg-plist
deleted file mode 100644
index fcb1e58c4864..000000000000
--- a/net/vtun/pkg-plist
+++ /dev/null
@@ -1,9 +0,0 @@
-@sample etc/vtund.conf.sample
-sbin/vtund
-share/man/man5/vtund.conf.5.gz
-share/man/man8/vtund.8.gz
-share/man/man8/vtun.8.gz
-share/man/man1/vtun.1.gz
-@dir /var/log/vtund
-@dir /var/lock/vtund
-@dir /var/lock