diff options
author | John Polstra <jdp@FreeBSD.org> | 2002-01-02 19:31:55 +0000 |
---|---|---|
committer | John Polstra <jdp@FreeBSD.org> | 2002-01-02 19:31:55 +0000 |
commit | d1c25fc9c9a186f7b93d3e84630caab17f04fb24 (patch) | |
tree | 28914989511a959b8e111cde12eeebd008fee243 /lang | |
parent | Upgrade to snap-16.1f. This snapshot is primarily cleanups, (diff) |
Remove the modula-3-socks port. It is obsolete. CVSup works fine
now with standard runsocks, and I have finally updated the manual
page to reflect that.
Notes
Notes:
svn path=/head/; revision=52508
Diffstat (limited to 'lang')
37 files changed, 0 insertions, 1078 deletions
diff --git a/lang/Makefile b/lang/Makefile index 4b31cf16c19e..c2bcc18af6b3 100644 --- a/lang/Makefile +++ b/lang/Makefile @@ -94,7 +94,6 @@ SUBDIR += mit-scheme SUBDIR += mixal SUBDIR += mmix - SUBDIR += modula-3-socks SUBDIR += moscow_ml SUBDIR += mozart SUBDIR += nawk diff --git a/lang/modula-3-socks/Makefile b/lang/modula-3-socks/Makefile deleted file mode 100644 index 57e2ba5e3c59..000000000000 --- a/lang/modula-3-socks/Makefile +++ /dev/null @@ -1,55 +0,0 @@ -# New ports collection makefile for: modula-3-socks -# Date created: 31 Oct 1996 -# Whom: John Polstra <jdp@polstra.com> -# -# $FreeBSD$ -# - -PORTNAME= modula-3-socks -PORTVERSION= 1.0 -CATEGORIES= lang -MASTER_SITES= ftp://ftp.cup.hp.com/dist/socks/A.B9.06/ -DISTNAME= socks - -MAINTAINER= jdp@polstra.com - -NO_WRKSUBDIR= yes - -MANCOMPRESSED= yes -MAN1= m3socks.1 -MAN5= m3socks.conf.5 - -libm3socks_files= accept.c bind.c close.c connect.c dup.c dup2.c \ - gethostbyaddr.c gethostbyname.c getpeername.c \ - getsockname.c listen.c read.c recv.c recvfrom.c \ - select.c send.c sendto.c shutdown.c socket.c \ - socksconf.h wrap.h write.c - -m3socks_files= m3socks.sh m3socks.1 m3socks.conf.5 - -post-extract: - @${CP} -p ${FILESDIR}/Makefile.top ${WRKSRC}/Makefile - @test -d ${WRKSRC}/libm3socks || ${MKDIR} ${WRKSRC}/libm3socks - @cd ${FILESDIR}; \ - ${CP} -p Makefile.libm3socks ${WRKSRC}/libm3socks/Makefile; \ - ${CP} -p ${libm3socks_files} ${WRKSRC}/libm3socks - @test -d ${WRKSRC}/m3socks || ${MKDIR} ${WRKSRC}/m3socks - @cd ${FILESDIR}; \ - ${CP} -p Makefile.m3socks ${WRKSRC}/m3socks/Makefile; \ - ${CP} -p ${m3socks_files} ${WRKSRC}/m3socks - -pre-install: - @cd ${PREFIX}/lib; \ - test -d m3/FreeBSD2 || { \ - ${MKDIR} m3/FreeBSD2; \ - ${CHOWN} ${BINOWN}:${BINGRP} m3 m3/FreeBSD2; \ - } - -post-install: - @if [ ! -f ${PREFIX}/etc/m3socks.conf ]; then \ - ${ECHO_MSG} -n "Please create a configuration file in "; \ - ${ECHO_MSG} "${PREFIX}/etc/m3socks.conf"; \ - ${ECHO_MSG} "Read m3socks.conf(5) for details"; \ - fi - -.include <bsd.port.mk> diff --git a/lang/modula-3-socks/distinfo b/lang/modula-3-socks/distinfo deleted file mode 100644 index a06d6138c407..000000000000 --- a/lang/modula-3-socks/distinfo +++ /dev/null @@ -1 +0,0 @@ -MD5 (socks.tar.gz) = e20003ba420c94582ede06b1243e395d diff --git a/lang/modula-3-socks/files/Makefile.libm3socks b/lang/modula-3-socks/files/Makefile.libm3socks deleted file mode 100644 index 362d11e25025..000000000000 --- a/lang/modula-3-socks/files/Makefile.libm3socks +++ /dev/null @@ -1,19 +0,0 @@ -PROG= libm3socks.so -SRCS= accept.c bind.c close.c connect.c dup.c dup2.c \ - gethostbyaddr.c gethostbyname.c getpeername.c getsockname.c \ - listen.c read.c recv.c recvfrom.c select.c send.c sendto.c \ - shutdown.c socket.c socksconf.h wrap.h write.c \ - Xconnect.c bytes.c check_cconf.c check_user.c percent_x.c \ - saddrtoname.c shell_cmd.c stubs.c -CFLAGS+= -I${.CURDIR}/../SOCKS-SOURCE/h -DPIC -fpic -w -LDFLAGS+= -Bshareable -BINDIR= ${PREFIX}/lib/m3/FreeBSD2 -NOMAN= yes - -.PATH: ${.CURDIR}/../SOCKS-SOURCE/lib \ - ${.CURDIR}/../SOCKS-SOURCE/client - -${PROG}: - ${LD} -o ${PROG} ${LDFLAGS} ${OBJS} ${LDADD} - -.include <bsd.prog.mk> diff --git a/lang/modula-3-socks/files/Makefile.m3socks b/lang/modula-3-socks/files/Makefile.m3socks deleted file mode 100644 index 1e6555a147e4..000000000000 --- a/lang/modula-3-socks/files/Makefile.m3socks +++ /dev/null @@ -1,18 +0,0 @@ -CLEANFILES+= m3socks -MAN1= m3socks.1 -MAN5= m3socks.conf.5 -BINDIR= ${PREFIX}/bin -MANDIR= ${PREFIX}/man/man - -all: m3socks - -.SUFFIXES: .sh - -.sh: - cp $@.sh $@ - -realinstall: - ${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ - m3socks ${BINDIR} - -.include <bsd.prog.mk> diff --git a/lang/modula-3-socks/files/Makefile.top b/lang/modula-3-socks/files/Makefile.top deleted file mode 100644 index 0e015de14485..000000000000 --- a/lang/modula-3-socks/files/Makefile.top +++ /dev/null @@ -1,3 +0,0 @@ -SUBDIR= libm3socks m3socks - -.include <bsd.subdir.mk> diff --git a/lang/modula-3-socks/files/accept.c b/lang/modula-3-socks/files/accept.c deleted file mode 100644 index 89f955d78d28..000000000000 --- a/lang/modula-3-socks/files/accept.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_accept(int s, struct sockaddr *addr, int *addrlen) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(addr); - MAKE_WRITABLE(addrlen); - result = accept(s, addr, addrlen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/bind.c b/lang/modula-3-socks/files/bind.c deleted file mode 100644 index d5cc51d56f64..000000000000 --- a/lang/modula-3-socks/files/bind.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_bind(int s, const struct sockaddr *name, int namelen) -{ - int result; - - ENTER_CRITICAL; - MAKE_READABLE(name); - result = bind(s, name, namelen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/close.c b/lang/modula-3-socks/files/close.c deleted file mode 100644 index 0b00e8ebe0c8..000000000000 --- a/lang/modula-3-socks/files/close.c +++ /dev/null @@ -1,13 +0,0 @@ -#include "wrap.h" -#include <unistd.h> - -int -m3_close(int d) -{ - int result; - - ENTER_CRITICAL; - result = close(d); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/connect.c b/lang/modula-3-socks/files/connect.c deleted file mode 100644 index 02c9f7878b32..000000000000 --- a/lang/modula-3-socks/files/connect.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_connect(int s, const struct sockaddr *name, int namelen) -{ - int result; - - ENTER_CRITICAL; - MAKE_READABLE(name); - result = connect(s, name, namelen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/dup.c b/lang/modula-3-socks/files/dup.c deleted file mode 100644 index 188ff67fd6b3..000000000000 --- a/lang/modula-3-socks/files/dup.c +++ /dev/null @@ -1,13 +0,0 @@ -#include "wrap.h" -#include <unistd.h> - -int -m3_dup(int oldd) -{ - int result; - - ENTER_CRITICAL; - result = dup(oldd); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/dup2.c b/lang/modula-3-socks/files/dup2.c deleted file mode 100644 index 582d570695e1..000000000000 --- a/lang/modula-3-socks/files/dup2.c +++ /dev/null @@ -1,13 +0,0 @@ -#include "wrap.h" -#include <unistd.h> - -int -m3_dup2(int oldd, int newd) -{ - int result; - - ENTER_CRITICAL; - result = dup2(oldd, newd); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/gethostbyaddr.c b/lang/modula-3-socks/files/gethostbyaddr.c deleted file mode 100644 index cf52f5117479..000000000000 --- a/lang/modula-3-socks/files/gethostbyaddr.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "wrap.h" -#include <netdb.h> - -struct hostent * -m3_gethostbyaddr(const char *addr, int len, int type) -{ - struct hostent *result; - - ENTER_CRITICAL; - MAKE_READABLE(addr); - result = gethostbyaddr(addr, len, type); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/gethostbyname.c b/lang/modula-3-socks/files/gethostbyname.c deleted file mode 100644 index 715471ea86eb..000000000000 --- a/lang/modula-3-socks/files/gethostbyname.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "wrap.h" -#include <netdb.h> - -struct hostent * -m3_gethostbyname(const char *name) -{ - struct hostent *result; - - ENTER_CRITICAL; - MAKE_READABLE(name); - result = gethostbyname(name); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/getpeername.c b/lang/modula-3-socks/files/getpeername.c deleted file mode 100644 index 4da8eaa201b2..000000000000 --- a/lang/modula-3-socks/files/getpeername.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_getpeername(int s, struct sockaddr *name, int *namelen) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(name); - MAKE_WRITABLE(namelen); - result = getpeername(s, name, namelen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/getsockname.c b/lang/modula-3-socks/files/getsockname.c deleted file mode 100644 index fdad80aed556..000000000000 --- a/lang/modula-3-socks/files/getsockname.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_getsockname(int s, struct sockaddr *name, int *namelen) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(name); - MAKE_WRITABLE(namelen); - result = getsockname(s, name, namelen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/listen.c b/lang/modula-3-socks/files/listen.c deleted file mode 100644 index 33e28e87a242..000000000000 --- a/lang/modula-3-socks/files/listen.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_listen(int s, int backlog) -{ - int result; - - ENTER_CRITICAL; - result = listen(s, backlog); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/m3socks.1 b/lang/modula-3-socks/files/m3socks.1 deleted file mode 100644 index 3d27c40d40dc..000000000000 --- a/lang/modula-3-socks/files/m3socks.1 +++ /dev/null @@ -1,46 +0,0 @@ -.Dd October 31, 1996 -.Os FreeBSD -.Dt M3SOCKS 1 -.Sh NAME -.Nm m3socks -.Nd execute a Modula-3 program using a SOCKS proxy server -.Sh SYNOPSIS -.Nm -.Ar command -.Op Ar arguments -.Sh DESCRIPTION -.Nm -runs -.Ar command -after dynamically linking SOCKS support into its memory image. -The -.Ar command -must be a dynamically linked Modula-3 program. -.Sh ENVIRONMENT -.Nm -exports the environment setting -.Ev M3SOCKS=1 -to -.Ar command . -This can be used by -.Ar command -to detect whether it is being run using SOCKS. -.Sh FILES -.Bl -tag -width /usr/local/etc/m3socks.confxx -compact -.It Pa /usr/local/etc/m3socks.conf -SOCKS configuration file. -.El -.Sh SEE ALSO -.Xr m3socks.conf 5 -.Sh STANDARDS -.Nm -uses version 4 of the SOCKS protocol. -This protocol is supported by version 4 and version 5 SOCKS servers. -.Sh BUGS -.Nm -has no effect if the -.Ar command -is a set-user-ID or set-group-ID program. -.Sh AUTHORS -John Polstra, -.Aq jdp@polstra.com . diff --git a/lang/modula-3-socks/files/m3socks.conf.5 b/lang/modula-3-socks/files/m3socks.conf.5 deleted file mode 100644 index 5c45c364a044..000000000000 --- a/lang/modula-3-socks/files/m3socks.conf.5 +++ /dev/null @@ -1,256 +0,0 @@ -.\" From: /3a/socks/man/RCS/socks.conf.4,v 2.11 1995/05/05 18:05:26 lamont Exp -.Dd May 5, 1995 -.Os FreeBSD -.Dt M3SOCKS.CONF 5 -.Sh NAME -.Nm m3socks.conf -.Nd configuration file for Modula-3 socks clients -.Sh DESCRIPTION -The Modula-3 SOCKS library reads its configuration information from -.Pa /usr/local/etc/m3socks.conf -when -.Fn bind -or -.Fn connect -is called. -If the file does not exist, then the environment variable -.Ev SOCKS_CONF -is expected to give the name of the configuration file. -.Pp -Each non-blank, non-comment line in the file contains a direction on how -to process requests that match certain criteria. -Comments are denoted by a -.Ql # -at any point in the line prior to the -.Ic : Ns Ar shellcmd , -if present. -Non-comment lines take the form: -.Pp -.Bl -item -compact -.It -.Ic bind default Ns \*(Ba Ns Ic wild -.It -.Ic domain Ar domain -.It -.Ic nameserver Ar nameserver -.It -.Ic findserver Ar findserver -.It -.Ic sockd -.Op Ic @= Ns Ar server -.Op Ic *= Ns Ar users -.Ar destspec -.Op Ar op Ar dport Op Ar dport2 -.Op Ic : Ns Ar shellcmd -.It -.Ic direct -.Op Ic *= Ns Ar users -.Ar destspec -.Op Ar op Ar dport Op Ar dport2 -.Op Ic : Ns Ar shellcmd -.It -.Ic deny -.Op Ic *= Ns Ar users -.Ar destspec -.Op Ar op Ar dport Op Ar dport2 -.Op Ic : Ns Ar shellcmd -.El -.Pp -Fields are constructed as follows: -.Bl -tag -width Fl -.It Ar domain -The -.Dq local -domain: the default name resolver is assumed to have -information for all hosts in -.Ar domain . -The user can override this field using the -.Ev SOCKS_LOCAL_DOMAIN -environment variable. -To indicate that the default server is able to resolve all addresses, -use the command: -.Ql domain \&. . -.It Ar nameserver -A comma separated list of name servers that are able to resolve addresses -outside of -.Ar domain . -The user can override this field using the -.Ev SOCKS_NS -environment variable. -.It Ar findserver -One of -.Ic Yes -or -.Ic \&No . -The default is -.Ic Yes . -If set, the client will attempt to find the -.Dq best -SOCKS server, based -on the results of looking up -.Ar destnet Ns Ic .socks-addr -(note that this is not an FQDN). -.Ar destnet -consists of the first one, two, or three octets of the destination network, -depending on whether the destination network is class A, B, or C. The octets -are used in reverse order, just like -.Ic IN-ADDR.ARPA . -For example, if the destination address is 129.105.69.100, then a search for -TXT records for '105.129.socks-addr' would be made. If any TXT records are -found, the record is prepended -to the list of servers from the config file. There is no environment -variable to override this. -.Pp -If clear -.Pq Ic findserver Ic \&No , -then the lookup is not performed. -.It Ar server -A comma separated list of SOCKS servers that can -be used as proxy for this destination. No spaces or tabs are allowed -inside the list. Names beginning with a -.Ql $ -are expanded from the users -environment. Each server in the list is tried until a successful -connection is established. When a server has multiple addresses, it -is assumed to be a group of hosts: the address list is randomized and -each address is tried before proceeding to the next name in the list. -The user can override this field using the -.Ev SOCKS_SERVER -environment variable. -.It Ar users -Specifies the users on the requesting host (not the destination host -or server host) to whom this line should apply. This is a comma -separated list of names and/or filenames, with no spaces or tabs. -Filenames must be fully qualified with a leading -.Ql / . -Inside the file, user names may be listed one or several -per line, with spaces, tabs, and commas being valid separators. -The appearance of -.Ql # -marks the remainder of the line as a comment. Each line in a file -is limited to 1023 characters. If -.Ar users -is omitted, the line applies to all users. -.It Ar destspec -The destination specification, which is either -.Ar daddr dmask -or -.Ic *. Ns Ar some.domain , -which indicates that the line applies to all IP addresses -whose reverse lookup, using -.Fn gethostbyaddr , -produces a name ending in -.Ql Cm . Ns Ar some.domain . -.It Ar daddr -The destination address to which this line applies. This is -usually specified in dotted form (e.g., 15.28.96.137). -If a hostname is used, then the first address returned by -.Fn gethostbyname -is used. -.It Ar dmask -Mask for -.Ar daddr , -in dotted form. Bits in -.Ar dmask -which are 0 are ignored in -.Ar daddr . -Specifying 255.255.255.255 requires an exact match, while 0.0.0.0 matches -regardless of the value of -.Ar daddr . -This is the same way netmasks are specified, and is the opposite -of the interpretation used in older versions of SOCKS. -.It Ar op dport Op Ar dport2 -A constraint on the destination TCP port. -If -.Ar op -is -.Ic eq , -.Ic neq , -.Ic \< , -.Ic gt , -.Ic le , -or -.Ic ge , -the destination port must have the corresponding relation to -.Ar dport . -If -.Ar op -is -.Ic btw , -the destination port must be between -.Ar dport -and -.Ar dport2 , -inclusive. -.It Ic : Ns Ar shellcmd -When the line is matched, -.Ar shellcmd -is passed to -.Pa /bin/sh , -with stdin, stdout, and stderr redirected to -.Pa /dev/null . -The following substitutions occur before the string -is presented to the shell: -.Bl -tag -width \&%Xxx -.It Cm \&%A -replaced by the client host's domainname if known, -by its IP address otherwise. -.It Cm \&%a -replaced by the client host's IP address. -.It Cm \&%c -replaced by -.Ql connect -or -.Ql bind . -.It Cm \&%p -replaced by the process id of the client program. -.It Cm \&%S -replaced by the service name (e.g., ftp) if known, -by the destination port number otherwise. -.It Cm \&%s -replaced by the destination port number. -.It Cm \&%U -replaced by the user-id at login. -.It Cm \&%u -replaced by the effective user-id. -.It Cm \&%Z -replaced by the destination host's domainname if known, -by its IP address otherwise. -.It Cm \&%z -replaced by the destination host's IP address. -.It Cm \&%% -replaced by a single -.Ql \&% . -.El -.El -.Sh EXAMPLES -All connections to net 15 are local: -.Dl Ic direct 15.0.0.0 255.0.0.0 -.Pp -Deny all requests destined for hosts on network 23: -.Dl Ic deny 23.0.0.0 255.0.0.0 -.Pp -Use the server my-server for hosts on network 36: -.Dl Ic sockd @=my-server 36.0.0.0 255.0.0.0 -.Pp -A typical complete configuration file: -.Bd -literal -offset indent -# The default name server is used for addresses inside -# the FreeBSD.org domain. -domain FreeBSD.org -# ns.FreeBSD.org is used as the name server for addresses -# outside FreeBSD.org. -nameserver ns.FreeBSD.org -# Don't find socks servers automatically. -findserver No -# All local connections are direct. -direct *.FreeBSD.org -# All other connections use the SOCKS server -# on socks.FreeBSD.org. -sockd @=socks.FreeBSD.org 0.0.0.0 0.0.0.0 -.Ed -.Sh SEE ALSO -.Xr m3socks 1 -.Sh AUTHORS -SOCKS was developed by David Koblas and Ying-Da Lee. -The HP enhancements were done by LaMont Jones. diff --git a/lang/modula-3-socks/files/m3socks.sh b/lang/modula-3-socks/files/m3socks.sh deleted file mode 100644 index 55bb198a8ed6..000000000000 --- a/lang/modula-3-socks/files/m3socks.sh +++ /dev/null @@ -1,10 +0,0 @@ -#! /bin/sh - -if [ $# -eq 0 ]; then - echo "Usage: $0 command [arguments]" >&2 - exit 2 -fi - -export M3SOCKS=1 -export LD_PRELOAD=/usr/local/lib/m3/FreeBSD2/libm3socks.so -exec "$@" diff --git a/lang/modula-3-socks/files/patch-aa b/lang/modula-3-socks/files/patch-aa deleted file mode 100644 index ce9a03a23e3c..000000000000 --- a/lang/modula-3-socks/files/patch-aa +++ /dev/null @@ -1,27 +0,0 @@ -Index: SOCKS-SOURCE/h/socksdef.h ---- SOCKS-SOURCE/h/socksdef.h.orig Wed Aug 7 19:25:31 1996 -+++ SOCKS-SOURCE/h/socksdef.h Wed Oct 30 21:05:37 1996 -@@ -15,9 +15,11 @@ - #define P_(x) () - #endif /* ! ANSI C */ - -+#ifndef __FreeBSD__ - extern int syslog P_((int , const char *, ...)); - extern int openlog P_((const char *, int , int )); - extern int closelog P_((void)); -+#endif - - #define LOG_LOW LOG_NOTICE - #define LOG_HIGH LOG_ERR -@@ -34,9 +36,9 @@ - #define INETD_SEC "/var/adm/inetd.sec" - #define DEFAULT_DEST "/opt/socks/bin" /* for socksify */ - #else /* ! V4FS */ --#define SOCKD_DUMP_FILE "/usr/tmp/sockd.conf.dump" -+#define SOCKD_DUMP_FILE "/var/tmp/sockd.conf.dump" - #define SOCKD_CONF "/usr/local/etc/sockd.conf" --#define SOCKS_CONF "/etc/socks.conf" -+#define SOCKS_CONF "/usr/local/etc/m3socks.conf" - #define OTHER_SOCKS_CONF "/usr/local/etc/socks.conf" - #define INETD_SEC "/usr/adm/inetd.sec" - #define DEFAULT_DEST "." /* for socksify */ diff --git a/lang/modula-3-socks/files/patch-ab b/lang/modula-3-socks/files/patch-ab deleted file mode 100644 index 11c68bc51aca..000000000000 --- a/lang/modula-3-socks/files/patch-ab +++ /dev/null @@ -1,249 +0,0 @@ -Index: SOCKS-SOURCE/client/Xconnect.c -diff -r -u SOCKS-SOURCE/client/Xconnect.c socks-jdp/client/Xconnect.c ---- SOCKS-SOURCE/client/Xconnect.c Wed Aug 7 19:25:51 1996 -+++ socks-jdp/client/Xconnect.c Thu Oct 24 21:35:47 1996 -@@ -24,7 +24,9 @@ - #include <netdb.h> - #include <arpa/nameser.h> - int res_init PARAM((void)); -+#ifndef __FreeBSD__ - int res_search PARAM((char*,int,int,u_char*,int)); -+#endif - int dn_skipname PARAM((u_char*,u_char*)); - #include <arpa/inet.h> - #include <resolv.h> -@@ -39,6 +41,10 @@ - #include "bytes.h" - #include "check_user.h" - -+#ifndef FIOSNBIO -+# define FIOSNBIO FIONBIO -+#endif -+ - unsigned char _SOCKS_version=SOCKS_VERSION; - - char *socks_dst_serv=NULL, *socks_dst_name=NULL; -@@ -102,6 +108,8 @@ - struct info *l; /* must be first field */ - int snum; - unsigned short type; -+ int connect_done:8; -+ int bind_done:8; - int sin_valid:8; - int peer_valid:8; - struct sockaddr_in sin; -@@ -185,16 +193,34 @@ - #ifndef INTERNAL_ONLY - if (_SOCKS_external) { - u_short port; -+ int status, oldf; -+ -+ oldf = -1; -+ status = 0; -+ while (1) -+ { -+ if ((oldf = fcntl(s, F_GETFL, NULL)) == -1) -+ { -+ break; -+ } -+ (void)fcntl(s, F_SETFL, oldf&~(O_NDELAY|O_NONBLOCK)); - if (_SOCKS_read(s,&net.version,sizeof(net.version)) < -1) -- return -1; -+ break; - if (_SOCKS_read(s,&net.cmd,sizeof(net.cmd)) < -1) -- return -1; -+ break; - if (_SOCKS_read(s,&port,sizeof(port)) < -1) -- return -1; -- net.port=port; -+ break; -+ net.port = port; - if (_SOCKS_read(s,&net.host,sizeof(net.host)) < -1) -- return -1; -- } else -+ break; -+ status = 1; -+ break; -+ } -+ if (oldf != -1) -+ (void)fcntl(s, F_SETFL, oldf); -+ if (!status) -+ return (-1); -+ } else - #endif /* INTERNAL_ONLY */ - { - if (_SOCKS_read(s,&net,sizeof(net)) < -1) -@@ -297,6 +323,12 @@ - - if (s>=0 && af == AF_INET) { - (void)add_sock(s,NULL,type); -+#if 1 -+ bval = size; -+ blen = sizeof(bval); -+ (void)setsockopt(s,SOL_SOCKET,SO_RCVBUF,&bval,blen); -+ (void)setsockopt(s,SOL_SOCKET,SO_SNDBUF,&bval,blen); -+#else - if (getsockopt(s,SOL_SOCKET,SO_RCVBUF,&bval,&blen)==0 && bval<size) { - bval=size; - (void)setsockopt(s,SOL_SOCKET,SO_RCVBUF,&bval,blen); -@@ -305,6 +337,7 @@ - bval=size; - (void)setsockopt(s,SOL_SOCKET,SO_SNDBUF,&bval,blen); - } -+#endif - } - return s; - } -@@ -380,6 +413,7 @@ - oldf=fcntl(sock,F_GETFL,NULL); - (void)fcntl(sock,F_SETFL,oldf&~(O_NDELAY|O_NONBLOCK)); - (void)ioctl(sock,FIOSNBIO,0); -+ errno = 0; - if (Xconnect(sock, sin, sizeof(struct sockaddr_in)) == 0) { - if (SendDst(sock, dst) < 0) { - ret_val=-1; -@@ -389,6 +423,7 @@ - lastSocksHost=sin->sin_addr.s_addr; - lastSocksPort=sin->sin_port; - *dst=mydst; -+ (void)fcntl(sock,F_SETFL,oldf); - return 0; - } else { - errno=ECONNREFUSED; -@@ -402,7 +437,7 @@ - exit(1); - } - Xclose(new_sock); -- -+ (void)fcntl(sock,F_SETFL,oldf); - return ret_val; - } - #ifdef PROTOTYPES -@@ -605,6 +640,12 @@ - l->sin.sin_family = AF_INET; - l->sin_valid = 1; - -+ if (type == SOCKS_CONNECT) { -+ l->connect_done = 1; -+ } else if (type == SOCKS_BIND) { -+ l->bind_done = 1; -+ } -+ - return 0; - break; - default: -@@ -627,9 +668,20 @@ - struct sockaddr_in *sin=(struct sockaddr_in *)usin; - - if (size == sizeof(struct sockaddr_in) && sin->sin_family == AF_INET) { -+ register infot *l=find_sock(sock); - _SOCKS_last_connect=*sin; -- return _SOCKS_cbind(sock,sin,size, -- sin->sin_addr.s_addr,SOCKS_CONNECT); -+ if (l == NULL || !l->connect_done) { -+ return _SOCKS_cbind(sock,sin,size, -+ sin->sin_addr.s_addr, -+ SOCKS_CONNECT); -+ l=find_sock(sock); -+ if (l) { -+ l->connect_done = 1; -+ } -+ } else { -+ errno = EISCONN; -+ return -1; -+ } - } else { - register infot *l=find_sock(sock); - if (l!=NULL) -@@ -713,10 +765,10 @@ - } - - #ifdef PROTOTYPES --int Rrecvfrom(int s,char *m,int len,int f,struct sockaddr_in *from,int *size) -+int Rrecvfrom(int s,char *m,size_t len,int f,struct sockaddr_in *from,int *size) - #else - int Rrecvfrom(s,m,len,f,from,size) --int s;char *m;int len;int f;struct sockaddr_in *from;int *size; -+int s;char *m;size_t len;int f;struct sockaddr_in *from;int *size; - #endif - { - infot *l=find_sock(s); -@@ -758,10 +810,10 @@ - } - - #ifdef PROTOTYPES --int Rrecv(int s,char *m,int len,int f) -+int Rrecv(int s,char *m,size_t len,int f) - #else - int Rrecv(s,m,len,f) --int s;char *m;int len;int f; -+int s;char *m;size_t len;int f; - #endif - { - struct sockaddr_in from; -@@ -771,10 +823,10 @@ - } - - #ifdef PROTOTYPES --int Rsendto(int s,char *m,int len,int f,struct sockaddr_in *to,int size) -+int Rsendto(int s,char *m,size_t len,int f,struct sockaddr_in *to,int size) - #else - int Rsendto(s,m,len,f,to,size) --int s;char *m;int len;int f;struct sockaddr_in *to;int size; -+int s;char *m;size_t len;int f;struct sockaddr_in *to;int size; - #endif - { - infot *l=find_sock(s); -@@ -805,10 +857,10 @@ - return _SOCKS_write(s,m,len); - } - #ifdef PROTOTYPES --int Rsend(int s,char *m,int len,int f) -+int Rsend(int s,char *m,size_t len,int f) - #else - int Rsend(s,m,len,f) --int s;char *m;int len;int f; -+int s;char *m;size_t len;int f; - #endif - { - infot *l=find_sock(s); -@@ -877,17 +929,28 @@ - fd_set fds; - Socks_t dst; - infot *l=find_sock(sock); -+ int nfds; -+ struct timeval timeout, *tptr=NULL; -+ int flags; - -+ errno = 0; - if (l == NULL || !l->sin_valid) - return Xaccept(sock,sin,size); - - /* if we found the entry, bind or connect was called, so no - SOCKSinit is needed. */ - -+ flags = fcntl(sock, F_GETFL, 0); -+ if (flags != -1 && (flags & O_NONBLOCK)) { -+ timeout.tv_sec = 0; -+ timeout.tv_usec = 0; -+ tptr = &timeout; -+ } -+ - FD_ZERO(&fds); - FD_SET(sock, &fds); - -- if (select(sock+1, (int*)&fds, NULL, NULL, NULL) > 0) -+ if ((nfds = select(sock+1, &fds, NULL, NULL, tptr)) > 0) { - if (FD_ISSET(sock, &fds)) { - if (GetDst(sock, &dst) < 0) - return -1; -@@ -901,6 +964,9 @@ - - return dup(sock); - } -+ } -+ if (nfds == 0) -+ errno = EWOULDBLOCK; - return -1; - } - #ifdef PROTOTYPES diff --git a/lang/modula-3-socks/files/read.c b/lang/modula-3-socks/files/read.c deleted file mode 100644 index 2172d2b73661..000000000000 --- a/lang/modula-3-socks/files/read.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <unistd.h> - -ssize_t -m3_read(int d, void *buf, size_t nbytes) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(buf); - result = read(d, buf, nbytes); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/recv.c b/lang/modula-3-socks/files/recv.c deleted file mode 100644 index bf4729092b70..000000000000 --- a/lang/modula-3-socks/files/recv.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -ssize_t -m3_recv(int s, void *buf, size_t len, int flags) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(buf); - result = recv(s, buf, len, flags); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/recvfrom.c b/lang/modula-3-socks/files/recvfrom.c deleted file mode 100644 index d4a346b3d86d..000000000000 --- a/lang/modula-3-socks/files/recvfrom.c +++ /dev/null @@ -1,18 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -ssize_t -m3_recvfrom(int s, void *buf, size_t len, int flags, - struct sockaddr *from, int *fromlen) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(buf); - MAKE_WRITABLE(from); - MAKE_WRITABLE(fromlen); - result = recvfrom(s, buf, len, flags, from, fromlen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/select.c b/lang/modula-3-socks/files/select.c deleted file mode 100644 index a3602472ce7a..000000000000 --- a/lang/modula-3-socks/files/select.c +++ /dev/null @@ -1,20 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/time.h> -#include <unistd.h> - -int -m3_select(int nfds, fd_set *readfds, fd_set *writefds, - fd_set *exceptfds, struct timeval *timeout) -{ - int result; - - ENTER_CRITICAL; - MAKE_WRITABLE(readfds); - MAKE_WRITABLE(writefds); - MAKE_WRITABLE(exceptfds); - MAKE_READABLE(timeout); - result = select(nfds, readfds, writefds, exceptfds, timeout); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/send.c b/lang/modula-3-socks/files/send.c deleted file mode 100644 index 20608ab0d402..000000000000 --- a/lang/modula-3-socks/files/send.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -ssize_t -m3_send(int s, const void *msg, size_t len, int flags) -{ - int result; - - ENTER_CRITICAL; - MAKE_READABLE(msg); - result = send(s, msg, len, flags); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/sendto.c b/lang/modula-3-socks/files/sendto.c deleted file mode 100644 index 30edf8aed4ed..000000000000 --- a/lang/modula-3-socks/files/sendto.c +++ /dev/null @@ -1,17 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -ssize_t -m3_sendto(int s, const void *msg, size_t len, int flags, - const struct sockaddr *to, int tolen) -{ - int result; - - ENTER_CRITICAL; - MAKE_READABLE(msg); - MAKE_READABLE(to); - result = sendto(s, msg, len, flags, to, tolen); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/shutdown.c b/lang/modula-3-socks/files/shutdown.c deleted file mode 100644 index 828d25e9a131..000000000000 --- a/lang/modula-3-socks/files/shutdown.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_shutdown(int s, int how) -{ - int result; - - ENTER_CRITICAL; - result = shutdown(s, how); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/socket.c b/lang/modula-3-socks/files/socket.c deleted file mode 100644 index 64dcae3737d1..000000000000 --- a/lang/modula-3-socks/files/socket.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <sys/socket.h> - -int -m3_socket(int domain, int type, int protocol) -{ - int result; - - ENTER_CRITICAL; - result = socket(domain, type, protocol); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/files/socksconf.h b/lang/modula-3-socks/files/socksconf.h deleted file mode 100644 index 033c831f4cba..000000000000 --- a/lang/modula-3-socks/files/socksconf.h +++ /dev/null @@ -1,6 +0,0 @@ -/* - * Define 0 or 1 of these, to select the variety of SOCKS support you want. - */ -#define HPSOCKS -#undef SOCKS4 -#undef SOCKS5 diff --git a/lang/modula-3-socks/files/wrap.h b/lang/modula-3-socks/files/wrap.h deleted file mode 100644 index 1199c604ccfc..000000000000 --- a/lang/modula-3-socks/files/wrap.h +++ /dev/null @@ -1,61 +0,0 @@ -#include "socksconf.h" - -#if defined(HPSOCKS) /* { */ - #define accept Raccept - #define bind Rxbind - #define close Rclose - #define connect Rconnect - #define dup Rdup - #define dup2 Rdup2 - #define gethostbyaddr Rgethostbyaddr - #define gethostbyname Rgethostbyname - #define getpeername Rgetpeername - #define getsockname Rgetsockname - #define listen Rlisten - #define recv Rrecv - #define recvfrom Rrecvfrom - #define send Rsend - #define sendto Rsendto - #define shutdown Rshutdown - #define socket Rsocket -#elif defined(SOCKS4) /* } { */ - #define accept Raccept - #define bind Rbind - #define connect Rconnect - #define getpeername Rgetpeername - #define getsockname Rgetsockname - #define listen Rlisten - #define select Rselect -#elif defined(SOCKS5) /* } { */ - #define accept SOCKSaccept - #define bind SOCKSbind - #define close SOCKSclose - #define connect SOCKSconnect - #define dup SOCKSdup - #define dup2 SOCKSdup2 - #define fclose SOCKSfclose - #define gethostbyname SOCKSgethostbyname - #define getpeername SOCKSgetpeername - #define getsockname SOCKSgetsockname - #define listen SOCKSlisten - #define read SOCKSread - #define recv SOCKSrecv - #define recvfrom SOCKSrecvfrom - #define rresvport SOCKSrresvport - #define select SOCKSselect - #define send SOCKSsend - #define sendto SOCKSsendto - #define shutdown SOCKSshutdown - #define write SOCKSwrite -#endif /* } */ - -extern int RT0u__inCritical; -#define ENTER_CRITICAL RT0u__inCritical++ -#define EXIT_CRITICAL RT0u__inCritical-- - -static char RTHeapDepC__c; -#define MAKE_READABLE(x) \ - if ((int)x) { RTHeapDepC__c = *(char*)(x); } - -#define MAKE_WRITABLE(x) \ - if ((int)x) { *(char*)(x) = RTHeapDepC__c = *(char*)(x); } diff --git a/lang/modula-3-socks/files/write.c b/lang/modula-3-socks/files/write.c deleted file mode 100644 index fc9412ea0774..000000000000 --- a/lang/modula-3-socks/files/write.c +++ /dev/null @@ -1,15 +0,0 @@ -#include "wrap.h" -#include <sys/types.h> -#include <unistd.h> - -size_t -m3_write(int fd, const void *buf, int nbytes) -{ - int result; - - ENTER_CRITICAL; - MAKE_READABLE(buf); - result = write(fd, buf, nbytes); - EXIT_CRITICAL; - return result; -} diff --git a/lang/modula-3-socks/pkg-comment b/lang/modula-3-socks/pkg-comment deleted file mode 100644 index 83a137f98b28..000000000000 --- a/lang/modula-3-socks/pkg-comment +++ /dev/null @@ -1 +0,0 @@ -SOCKS support for Modula-3 programs diff --git a/lang/modula-3-socks/pkg-descr b/lang/modula-3-socks/pkg-descr deleted file mode 100644 index fdbf96cc3c6c..000000000000 --- a/lang/modula-3-socks/pkg-descr +++ /dev/null @@ -1,7 +0,0 @@ -This provides SOCKS support for Modula-3 network applications. It is -based on the H-P SOCKS library, with modifications developed by Darryl -Okahata to support Modula-3's thread package. It uses version 4 of the -SOCKS protocol, which is compatible with both version 4 and version 5 -SOCKS servers. - -jdp@freebsd.org diff --git a/lang/modula-3-socks/pkg-plist b/lang/modula-3-socks/pkg-plist deleted file mode 100644 index 382077f95167..000000000000 --- a/lang/modula-3-socks/pkg-plist +++ /dev/null @@ -1,3 +0,0 @@ -bin/m3socks -lib/m3/FreeBSD2/libm3socks.so -@exec if [ ! -f %D/etc/m3socks.conf ]; then echo "Please create a configuration file in %D/etc/m3socks.conf"; echo "Read m3socks.conf(5) for details"; fi diff --git a/lang/modula-3-socks/scripts/configure b/lang/modula-3-socks/scripts/configure deleted file mode 100644 index 0016fb236bb0..000000000000 --- a/lang/modula-3-socks/scripts/configure +++ /dev/null @@ -1,13 +0,0 @@ -#! /bin/sh - -files="SOCKS-SOURCE/h/socksdef.h \ - m3socks/m3socks.sh \ - m3socks/m3socks.1 \ - m3socks/m3socks.conf.5" - -cd ${WRKSRC} -for i in ${files}; do - test -f $i.bak || cp $i $i.bak - chmod +w $i - sed "s|/usr/local/|${PREFIX}/|g" $i.bak > $i && rm -f $i.bak -done |