1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-30 05:40:06 +00:00

New port: net/wangle: Framework building services in a consistent/modular/composable way

This commit is contained in:
Yuri Victorovich 2020-09-08 17:13:29 +00:00
parent c6aeec66b9
commit c1c4cc9138
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=547998
6 changed files with 180 additions and 0 deletions

View File

@ -1507,6 +1507,7 @@
SUBDIR += vtun
SUBDIR += wackamole
SUBDIR += wakeonlan
SUBDIR += wangle
SUBDIR += waypipe
SUBDIR += wayvnc
SUBDIR += webalizer-geodb

41
net/wangle/Makefile Normal file
View File

@ -0,0 +1,41 @@
# $FreeBSD$
PORTNAME= wangle
DISTVERSIONPREFIX= v
DISTVERSION= 2020.09.07.00
CATEGORIES= net
MAINTAINER= yuri@FreeBSD.org
COMMENT= Framework building services in a consistent/modular/composable way
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/../LICENSE
LIB_DEPENDS= libboost_system.so:devel/boost-libs \
libdouble-conversion.so:devel/double-conversion \
libevent.so:devel/libevent \
libfizz.so:security/fizz \
libfolly.so:devel/folly \
libgflags.so:devel/gflags \
libfmt.so:devel/libfmt \
libglog.so:devel/glog \
libsodium.so:security/libsodium
USES= cmake compiler:c++17-lang ssl
USE_GITHUB= yes
GH_ACCOUNT= facebook
USE_LDCONFIG= yes
WRKSRC_SUBDIR= ${PORTNAME}
CMAKE_ON= BUILD_SHARED_LIBS
CMAKE_OFF= BUILD_TESTS
post-install: # https://github.com/facebook/wangle/issues/179
cd ${STAGEDIR}${PREFIX} && \
${RMDIR} \
include/wangle/service/test \
include/wangle/ssl/test/certs \
include/wangle/util/test
.include <bsd.port.mk>

3
net/wangle/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1599583674
SHA256 (facebook-wangle-v2020.09.07.00_GH0.tar.gz) = 5751b5243a2bada00d40d15f7088cddf8eee73f9b30d1e57cad6879cddf36ff3
SIZE (facebook-wangle-v2020.09.07.00_GH0.tar.gz) = 322412

View File

@ -0,0 +1,19 @@
--- acceptor/TransportInfo.cpp.orig 2020-09-08 16:56:17 UTC
+++ acceptor/TransportInfo.cpp
@@ -42,6 +42,16 @@ bool TransportInfo::initWithSocket(const folly::AsyncS
if (mss > 0) {
cwnd = (cwndBytes + mss - 1) / mss;
}
+#elif defined(__FreeBSD__)
+ rtt = microseconds(tcpinfo.tcpi_rtt * 1000);
+ rtt_var = tcpinfo.tcpi_rttvar * 1000;
+ rto = tcpinfo.tcpi_rto * 1000;
+ rtx_tm = -1;
+ mss = tcpinfo.tcpi_snd_mss;
+ cwndBytes = tcpinfo.tcpi_snd_cwnd;
+ if (mss > 0) {
+ cwnd = (cwndBytes + mss - 1) / mss;
+ }
#else
rtt = microseconds(tcpinfo.tcpi_rtt);
rtt_var = tcpinfo.tcpi_rttvar;

6
net/wangle/pkg-descr Normal file
View File

@ -0,0 +1,6 @@
Wangle is a library that makes it easy to build protocols, application clients,
and application servers.
It's like Netty + Finagle smooshed together, but in C++.
WWW: https://github.com/facebook/wangle

110
net/wangle/pkg-plist Normal file
View File

@ -0,0 +1,110 @@
include/wangle/acceptor/AcceptObserver.h
include/wangle/acceptor/Acceptor.h
include/wangle/acceptor/AcceptorHandshakeManager.h
include/wangle/acceptor/ConnectionCounter.h
include/wangle/acceptor/ConnectionManager.h
include/wangle/acceptor/EvbHandshakeHelper.h
include/wangle/acceptor/FizzAcceptorHandshakeHelper.h
include/wangle/acceptor/FizzConfig.h
include/wangle/acceptor/FizzConfigUtil.h
include/wangle/acceptor/LoadShedConfiguration.h
include/wangle/acceptor/ManagedConnection.h
include/wangle/acceptor/NetworkAddress.h
include/wangle/acceptor/PeekingAcceptorHandshakeHelper.h
include/wangle/acceptor/SSLAcceptorHandshakeHelper.h
include/wangle/acceptor/SSLContextSelectionMisc.h
include/wangle/acceptor/SecureTransportType.h
include/wangle/acceptor/SecurityProtocolContextManager.h
include/wangle/acceptor/ServerSocketConfig.h
include/wangle/acceptor/SharedSSLContextManager.h
include/wangle/acceptor/SocketOptions.h
include/wangle/acceptor/SocketPeeker.h
include/wangle/acceptor/TLSPlaintextPeekingCallback.h
include/wangle/acceptor/TransportInfo.h
include/wangle/acceptor/UnencryptedAcceptorHandshakeHelper.h
include/wangle/acceptor/test/AcceptorHelperMocks.h
include/wangle/bootstrap/AcceptRoutingHandler-inl.h
include/wangle/bootstrap/AcceptRoutingHandler.h
include/wangle/bootstrap/BaseClientBootstrap.h
include/wangle/bootstrap/ClientBootstrap.h
include/wangle/bootstrap/RoutingDataHandler-inl.h
include/wangle/bootstrap/RoutingDataHandler.h
include/wangle/bootstrap/ServerBootstrap-inl.h
include/wangle/bootstrap/ServerBootstrap.h
include/wangle/bootstrap/ServerSocketFactory.h
include/wangle/bootstrap/test/Mocks.h
include/wangle/channel/AsyncSocketHandler.h
include/wangle/channel/EventBaseHandler.h
include/wangle/channel/FileRegion.h
include/wangle/channel/Handler.h
include/wangle/channel/HandlerContext-inl.h
include/wangle/channel/HandlerContext.h
include/wangle/channel/OutputBufferingHandler.h
include/wangle/channel/Pipeline-inl.h
include/wangle/channel/Pipeline.h
include/wangle/channel/StaticPipeline.h
include/wangle/channel/broadcast/BroadcastHandler-inl.h
include/wangle/channel/broadcast/BroadcastHandler.h
include/wangle/channel/broadcast/BroadcastPool-inl.h
include/wangle/channel/broadcast/BroadcastPool.h
include/wangle/channel/broadcast/ObservingHandler-inl.h
include/wangle/channel/broadcast/ObservingHandler.h
include/wangle/channel/broadcast/Subscriber.h
include/wangle/channel/broadcast/test/Mocks.h
include/wangle/channel/test/MockHandler.h
include/wangle/channel/test/MockPipeline.h
include/wangle/client/persistence/FilePersistenceLayer.h
include/wangle/client/persistence/FilePersistentCache.h
include/wangle/client/persistence/LRUInMemoryCache-inl.h
include/wangle/client/persistence/LRUInMemoryCache.h
include/wangle/client/persistence/LRUPersistentCache-inl.h
include/wangle/client/persistence/LRUPersistentCache.h
include/wangle/client/persistence/PersistentCache.h
include/wangle/client/persistence/PersistentCacheCommon.h
include/wangle/client/persistence/SharedMutexCacheLockGuard.h
include/wangle/client/persistence/test/Mocks.h
include/wangle/client/persistence/test/TestUtil.h
include/wangle/client/ssl/SSLSessionCacheData.h
include/wangle/client/ssl/SSLSessionCacheUtils.h
include/wangle/client/ssl/SSLSessionCallbacks.h
include/wangle/client/ssl/SSLSessionPersistentCache-inl.h
include/wangle/client/ssl/SSLSessionPersistentCache.h
include/wangle/client/ssl/ThreadSafeSSLSessionCache.h
include/wangle/client/ssl/test/Mocks.h
include/wangle/client/ssl/test/TestUtil.h
include/wangle/codec/ByteToMessageDecoder.h
include/wangle/codec/FixedLengthFrameDecoder.h
include/wangle/codec/LengthFieldBasedFrameDecoder.h
include/wangle/codec/LengthFieldPrepender.h
include/wangle/codec/LineBasedFrameDecoder.h
include/wangle/codec/MessageToByteEncoder.h
include/wangle/codec/StringCodec.h
include/wangle/codec/test/CodecTestUtils.h
include/wangle/service/ClientDispatcher.h
include/wangle/service/CloseOnReleaseFilter.h
include/wangle/service/ExecutorFilter.h
include/wangle/service/ExpiringFilter.h
include/wangle/service/ServerDispatcher.h
include/wangle/service/Service.h
include/wangle/ssl/ClientHelloExtStats.h
include/wangle/ssl/PasswordInFileFactory.h
include/wangle/ssl/SSLCacheOptions.h
include/wangle/ssl/SSLCacheProvider.h
include/wangle/ssl/SSLContextConfig.h
include/wangle/ssl/SSLContextManager.h
include/wangle/ssl/SSLSessionCacheManager.h
include/wangle/ssl/SSLStats.h
include/wangle/ssl/SSLUtil.h
include/wangle/ssl/ServerSSLContext.h
include/wangle/ssl/TLSCredProcessor.h
include/wangle/ssl/TLSTicketKeyManager.h
include/wangle/ssl/TLSTicketKeySeeds.h
include/wangle/ssl/test/TicketUtil.h
include/wangle/util/FilePoller.h
include/wangle/util/MultiFilePoller.h
lib/cmake/wangle/wangle-config.cmake
lib/cmake/wangle/wangle-targets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/wangle/wangle-targets.cmake
lib/libwangle.so
lib/libwangle.so.1
lib/libwangle.so.1.0.0