# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= shadowsocks-libev VERSION= 3.3.5 REVISION= 3 KEYWORDS= net VARIANTS= standard SDESC[standard]= Secure socks5 proxy HOMEPAGE= https://github.com/shadowsocks/shadowsocks-libev/blob/master/README.md CONTACT= nobody DOWNLOAD_GROUPS= main bloom cork ipset SITES[main]= GITHUB/shadowsocks:shadowsocks-libev:v3.3.5 SITES[bloom]= GITHUB/shadowsocks:libbloom:437e1ad:libbloom SITES[cork]= GITHUB/shadowsocks:libcork:074e074:libcork SITES[ipset]= GITHUB/shadowsocks:ipset:3ea7fe3:libipset DISTFILE[1]= generated:main DISTFILE[2]= generated:bloom DISTFILE[3]= generated:cork DISTFILE[4]= generated:ipset DF_INDEX= 1 2 3 4 SPKGS[standard]= complete primary man docs OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= asciidoc:single:standard libev:dev:standard libsodium:dev:standard xmlto:single:standard c-ares:dev:standard mbedtls13:dev:standard BUILDRUN_DEPENDS= libev:primary:standard mbedtls13:primary:standard libsodium:primary:standard c-ares:primary:standard USES= autoreconf cpe gmake libtool pcre LICENSE= GPLv3+:primary LICENSE_TERMS= primary:{{WRKSRC}}/COPYING LICENSE_FILE= GPLv3+:stock LICENSE_SCHEME= solo CPE_VENDOR= shadowsocks FPC_EQUIVALENT= net/shadowsocks-libev MUST_CONFIGURE= gnu CONFIGURE_ARGS= --enable-shared INSTALL_TARGET= install-strip SOVERSION= 2.0.0 RC_SUBR= shadowsocks_libev:primary post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/etc/shadowsocks-libev ${INSTALL_DATA} ${WRKSRC}/debian/config.json \ ${STAGEDIR}${PREFIX}/etc/shadowsocks-libev/config.json.sample # bash support ${MKDIR} ${STAGEDIR}${PREFIX}/share/bash-completion/completions .for c in ss-local ss-manager ss-redir ss-server ss-tunnel ${INSTALL_DATA} ${WRKSRC}/completions/bash/${c} \ ${STAGEDIR}${PREFIX}/share/bash-completion/completions/${c} .endfor # zsh support ${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions .for c in _ss-local _ss-manager _ss-redir _ss-server _ss-tunnel ${INSTALL_DATA} ${WRKSRC}/completions/zsh/${c} \ ${STAGEDIR}${PREFIX}/share/zsh/site-functions/${c} .endfor [FILE:879:descriptions/desc.primary] Shadowsocks: A secure SOCKS5 proxy Shadowsocks is a secure split proxy loosely based on SOCKS5. client <---> ss-local <--[encrypted]--> ss-remote <---> target The Shadowsocks local component (ss-local) acts like a traditional SOCKS5 server and provides proxy service to clients. It encrypts and forwards data streams and packets from the client to the Shadowsocks remote component (ss-remote), which decrypts and forwards to the target. Replies from target are similarly encrypted and relayed by ss-remote back to ss-local, which decrypts and eventually returns to the original client. Shadowsocks-libev is a lightweight secured SOCKS5 proxy for embedded devices and low-end boxes. Shadowsocks-libev is written in pure C and depends on libev. It's designed to be a very simple implementation of shadowsocks protocol, in order to keep the resource usage as low as possible. [FILE:459:distinfo] cca6f46d9ac51c290cd50b8c26286a347bfd189d686340f32e8b264b630a166a 303368 shadowsocks-shadowsocks-libev-3.3.5.tar.gz bc10f87b9f06711e2d2783dc53b04dceca7eed952fe0a89a35794952afa495d5 1208176 shadowsocks-libbloom-437e1ad.tar.gz 6bb33c93dcbb7fbbeb7d82994e769bb05cdd168d8ebf5c0e1921bd22327fe54e 186531 shadowsocks-libcork-074e074.tar.gz e7b487c21a5352a3c9faef3256ed1a539f7ee46f38bf57922340c125c720da61 64895 shadowsocks-ipset-3ea7fe3.tar.gz [FILE:472:manifests/plist.primary] @sample etc/shadowsocks-libev/config.json.sample %%ONLY-LINUX%%bin/ ss-nat ss-redir bin/ ss-local ss-manager ss-server ss-tunnel include/shadowsocks.h lib/ libshadowsocks-libev.so libshadowsocks-libev.so.%%SOMAJOR%% libshadowsocks-libev.so.%%SOVERSION%% lib/pkgconfig/shadowsocks-libev.pc share/bash-completion/completions/ ss-local ss-manager ss-redir ss-server ss-tunnel share/zsh/site-functions/ _ss-local _ss-manager _ss-redir _ss-server _ss-tunnel [FILE:146:manifests/plist.man] share/man/man1/ ss-local.1.gz ss-manager.1.gz ss-nat.1.gz ss-redir.1.gz ss-server.1.gz ss-tunnel.1.gz share/man/man8/shadowsocks-libev.8.gz [FILE:145:manifests/plist.docs] share/doc/shadowsocks-libev/ shadowsocks-libev.html ss-local.html ss-manager.html ss-nat.html ss-redir.html ss-server.html ss-tunnel.html [FILE:284:patches/patch-libcork_include_libcork_config_bsd.h] --- libcork/include/libcork/config/bsd.h.orig 2019-07-24 14:01:14 UTC +++ libcork/include/libcork/config/bsd.h @@ -27,7 +27,9 @@ #error "Cannot determine system endianness" #endif +#if !defined(__NetBSD__) #define CORK_HAVE_REALLOCF 1 +#endif #define CORK_HAVE_PTHREADS 1 [FILE:656:patches/patch-libcork_src_libcork_posix_env.c] --- libcork/src/libcork/posix/env.c.orig 2019-07-24 14:01:14 UTC +++ libcork/src/libcork/posix/env.c @@ -194,12 +194,19 @@ cork_env_set_vars(void *user_data, struc * * [1] http://www.gnu.org/software/gnulib/manual/html_node/clearenv.html */ + +#if (defined(__FreeBSD__) && (__FreeBSD__ < 14) && !defined(__MidnightBSD__)) || defined(__NetBSD__) +/* Since FreeBSD 14.0-CURRENT, the clearenv(3) function was added to stdlib. + * See https://reviews.freebsd.org/R10:597b02675751e48dd04777f1e91fee382bf3a966 + */ + static void clearenv(void) { *environ = NULL; } +#endif #else /* Otherwise assume that we have clearenv available. */ #endif [FILE:807:files/shadowsocks_libev.in] #!/bin/sh # # PROVIDE: shadowsocks-libev # REQUIRE: LOGIN cleanvar # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf to enable shadowsocks-libev: # shadowsocks_libev_enable (bool): Set to "NO" by default. # Set to "YES" to enable shadowsocks-libev. # shadowsocks_libev_config (path): Shadowsocks config file. # Defaults to "%%PREFIX%%/etc/shadowsocks-libev/config.json" . /etc/rc.subr name="shadowsocks_libev" rcvar=shadowsocks_libev_enable load_rc_config $name : ${shadowsocks_libev_enable:="NO"} : ${shadowsocks_libev_config="%%PREFIX%%/etc/shadowsocks-libev/config.json"} command="%%PREFIX%%/bin/ss-server" pidfile="/var/run/shadowsocks-libev.pid" required_files="${shadowsocks_libev_config}" command_args="-f $pidfile -c $shadowsocks_libev_config" run_rc_command "$1"