Index: head/net-p2p/amule-devel/Makefile =================================================================== --- head/net-p2p/amule-devel/Makefile (revision 499598) +++ head/net-p2p/amule-devel/Makefile (revision 499599) @@ -1,114 +1,113 @@ # Created by: Ganael LAPLANCHE # $FreeBSD$ PORTNAME= amule -PORTVERSION= 10998 -PORTREVISION= 3 +PORTVERSION= 11004 CATEGORIES= net-p2p MASTER_SITES= http://amule.sourceforge.net/tarballs/ PKGNAMESUFFIX= -devel DISTNAME= aMule-SVN-r${PORTVERSION} MAINTAINER= bar@FreeBSD.org COMMENT= All-platform eMule p2p client LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/docs/COPYING LIB_DEPENDS= libcryptopp.so:security/cryptopp CONFLICTS= amule-[0-9]* USES= bison compiler:c++11-lang desktop-file-utils desktop-file-utils \ gmake localbase:ldflags perl5 pkgconfig shebangfix tar:bzip2 USE_PERL5= build USE_WX= 2.8 WX_CONF_ARGS= absolute SHEBANG_FILES= src/utils/scripts/*.pl src/utils/xas/*.pl src/libs/ec/*.pl GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-denoise-level=0 CONFIGURE_ENV= LEX="${FLEX}" PKG_CONFIG="${PKG_CONFIG}" \ docdir='$${prefix}/${DOCSDIR_REL}' CXXFLAGS+= `pkgconf --cflags-only-other libcryptopp` LDFLAGS+= -lpthread OPTIONS_DEFINE= ALC ALCC AMULECMD AMULEDAEMON AMULEGUI CAS DEBUG DOCS ED2K \ FILEVIEW MMAP MONOLITHIC NLS OPTIMIZED_CFLAGS UPNP \ WEBSERVER WXCAS XAS ALC_DESC= Compile aMule Link Creator for GUI ALCC_DESC= Compile aMule Link Creator for console AMULECMD_DESC= Compile aMule command line client AMULEDAEMON_DESC= Compile aMule daemon version AMULEGUI_DESC= Compile aMule remote GUI CAS_DESC= Compile aMule Statistics for console ED2K_DESC= Compile aMule ed2k links handler FILEVIEW_DESC= Compile file viewer for console MMAP_DESC= Use mapped memory MONOLITHIC_DESC= Compile monolithic aMule WXCAS_DESC= Compile aMule Statistics for GUI XAS_DESC= Install XChat2 plugin OPTIONS_DEFAULT=ALC ALCC AMULECMD AMULEDAEMON AMULEGUI CAS ED2K \ FILEVIEW MONOLITHIC WEBSERVER WXCAS XAS OPTIONS_SUB= yes DEBUG_CONFIGURE_ON= --enable-debug NLS_USES= gettext NLS_CONFIGURE_OFF= --disable-nls ALC_CONFIGURE_ON= --enable-alc ALCC_CONFIGURE_ON= --enable-alcc AMULECMD_CONFIGURE_ON= --enable-amulecmd AMULECMD_USES= readline AMULEDAEMON_CONFIGURE_ON= --enable-amule-daemon AMULEDAEMON_USE= RC_SUBR=amuled AMULEGUI_CONFIGURE_ON= --enable-amule-gui CAS_CONFIGURE_ON= --enable-cas CAS_LIB_DEPENDS= libgd.so:graphics/gd ED2K_CONFIGURE_OFF= --disable-ed2k ED2K_CONFLICTS= ed2k-hash* FILEVIEW_CONFIGURE_ON= --enable-fileview MMAP_CONFIGURE_ON= --enable-mmap MONOLITHIC_CONFIGURE_OFF= --disable-monolithic UPNP_LIB_DEPENDS= libupnp.so:devel/upnp UPNP_CONFIGURE_OFF= --disable-upnp WEBSERVER_CONFIGURE_ON= --enable-webserver WEBSERVER_LIB_DEPENDS= libpng.so:graphics/png WEBSERVER_USES= readline WXCAS_CONFIGURE_ON= --enable-wxcas XAS_CONFIGURE_ON= --enable-xas XAS_USE= PERL5+=run OPTIMIZED_CFLAGS_CONFIGURE_ON= --enable-optimize post-patch: @${REINPLACE_CMD} -e 's/test.*-print-file-name.*`/true/' \ -e '/if.*test/s/==/=/' \ ${WRKSRC}/configure post-patch-DOCS-off: @${REINPLACE_CMD} 's/install-data-am:.*/install-data-am:/' \ ${WRKSRC}/docs/Makefile.in post-install-FILEVIEW-on: ${INSTALL_PROGRAM} ${WRKSRC}/src/utils/fileview/mulefileview ${STAGEDIR}${PREFIX}/bin .include Index: head/net-p2p/amule-devel/distinfo =================================================================== --- head/net-p2p/amule-devel/distinfo (revision 499598) +++ head/net-p2p/amule-devel/distinfo (revision 499599) @@ -1,3 +1,3 @@ -TIMESTAMP = 1521706594 -SHA256 (aMule-SVN-r10998.tar.bz2) = 51cb110dfe64fd2c45ecad908a73bf1ca0c6a3827a07d40604f0ac229121e2a9 -SIZE (aMule-SVN-r10998.tar.bz2) = 4731496 +TIMESTAMP = 1555887052 +SHA256 (aMule-SVN-r11004.tar.bz2) = 0b3c148f0e3b2be114b8b525973cdfbef942bc9268d59e2e7da044a78c9afdc1 +SIZE (aMule-SVN-r11004.tar.bz2) = 4731721 Index: head/net-p2p/amule-devel/files/patch-src_UPnPBase.cpp =================================================================== --- head/net-p2p/amule-devel/files/patch-src_UPnPBase.cpp (nonexistent) +++ head/net-p2p/amule-devel/files/patch-src_UPnPBase.cpp (revision 499599) @@ -0,0 +1,307 @@ +--- src/UPnPBase.cpp.orig 2018-11-19 11:11:51 UTC ++++ src/UPnPBase.cpp +@@ -1127,7 +1127,11 @@ bool CUPnPControlPoint::PrivateDeletePor + + + // This function is static ++#if UPNP_VERSION >= 10800 ++int CUPnPControlPoint::Callback(Upnp_EventType_e EventType, const void *Event, void * /*Cookie*/) ++#else + int CUPnPControlPoint::Callback(Upnp_EventType EventType, void *Event, void * /*Cookie*/) ++#endif + { + std::ostringstream msg; + std::ostringstream msg2; +@@ -1149,24 +1153,47 @@ int CUPnPControlPoint::Callback(Upnp_Eve + msg2<< "UPNP_DISCOVERY_SEARCH_RESULT: "; + // UPnP Discovery + upnpDiscovery: ++#if UPNP_VERSION >= 10800 ++ UpnpDiscovery *d_event = (UpnpDiscovery *)Event; ++#else + struct Upnp_Discovery *d_event = (struct Upnp_Discovery *)Event; ++#endif + IXML_Document *doc = NULL; ++#if UPNP_VERSION >= 10800 ++ int errCode = UpnpDiscovery_get_ErrCode(d_event); ++ if (errCode != UPNP_E_SUCCESS) { ++ msg << UpnpGetErrorMessage(errCode) << "."; ++#else + int ret; + if (d_event->ErrCode != UPNP_E_SUCCESS) { + msg << UpnpGetErrorMessage(d_event->ErrCode) << "."; ++#endif + AddDebugLogLineC(logUPnP, msg); + } + // Get the XML tree device description in doc ++#if UPNP_VERSION >= 10800 ++ const char *location = UpnpDiscovery_get_Location_cstr(d_event); ++ int ret = UpnpDownloadXmlDoc(location, &doc); ++#else + ret = UpnpDownloadXmlDoc(d_event->Location, &doc); ++#endif + if (ret != UPNP_E_SUCCESS) { + msg << "Error retrieving device description from " << ++#if UPNP_VERSION >= 10800 ++ location << ": " << ++#else + d_event->Location << ": " << ++#endif + UpnpGetErrorMessage(ret) << + "(" << ret << ")."; + AddDebugLogLineC(logUPnP, msg); + } else { + msg2 << "Retrieving device description from " << ++#if UPNP_VERSION >= 10800 ++ location << "."; ++#else + d_event->Location << "."; ++#endif + AddDebugLogLineN(logUPnP, msg2); + } + if (doc) { +@@ -1194,8 +1221,14 @@ upnpDiscovery: + AddDebugLogLineC(logUPnP, msg); + } + // Add the root device to our list ++#if UPNP_VERSION >= 10800 ++ int expires = UpnpDiscovery_get_Expires(d_event); ++ upnpCP->AddRootDevice(rootDevice, urlBase, ++ location, expires); ++#else + upnpCP->AddRootDevice(rootDevice, urlBase, + d_event->Location, d_event->Expires); ++#endif + } + // Free the XML doc tree + IXML::Document::Free(doc); +@@ -1216,28 +1249,58 @@ upnpDiscovery: + case UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE: { + //fprintf(stderr, "Callback: UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE\n"); + // UPnP Device Removed ++#if UPNP_VERSION >= 10800 ++ UpnpDiscovery *dab_event = (UpnpDiscovery *)Event; ++ int errCode = UpnpDiscovery_get_ErrCode(dab_event); ++ if (errCode != UPNP_E_SUCCESS) { ++#else + struct Upnp_Discovery *dab_event = (struct Upnp_Discovery *)Event; + if (dab_event->ErrCode != UPNP_E_SUCCESS) { ++#endif + msg << "error(UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE): " << ++#if UPNP_VERSION >= 10800 ++ UpnpGetErrorMessage(errCode) << ++#else + UpnpGetErrorMessage(dab_event->ErrCode) << ++#endif + "."; + AddDebugLogLineC(logUPnP, msg); + } ++#if UPNP_VERSION >= 10800 ++ std::string devType = UpnpDiscovery_get_DeviceType_cstr(dab_event); ++#else + std::string devType = dab_event->DeviceType; ++#endif + // Check for an InternetGatewayDevice and removes it from the list + std::transform(devType.begin(), devType.end(), devType.begin(), tolower); + if (stdStringIsEqualCI(devType, UPnP::Device::IGW)) { ++#if UPNP_VERSION >= 10800 ++ upnpCP->RemoveRootDevice(deviceID); ++#else + upnpCP->RemoveRootDevice(dab_event->DeviceId); ++#endif + } + break; + } + case UPNP_EVENT_RECEIVED: { + //fprintf(stderr, "Callback: UPNP_EVENT_RECEIVED\n"); + // Event reveived ++#if UPNP_VERSION >= 10800 ++ UpnpEvent *e_event = (UpnpEvent *)Event; ++ int eventKey = UpnpEvent_get_EventKey(e_event); ++ IXML_Document *changedVariables = ++ UpnpEvent_get_ChangedVariables(e_event); ++ onst std::string sid = UpnpEvent_get_SID_cstr(e_event); ++#else + struct Upnp_Event *e_event = (struct Upnp_Event *)Event; + const std::string Sid = e_event->Sid; ++#endif + // Parses the event ++#if UPNP_VERSION >= 10800 ++ upnpCP->OnEventReceived(sid, eventKey, changedVariables); ++#else + upnpCP->OnEventReceived(Sid, e_event->EventKey, e_event->ChangedVariables); ++#endif + break; + } + case UPNP_EVENT_SUBSCRIBE_COMPLETE: +@@ -1252,19 +1315,39 @@ upnpDiscovery: + //fprintf(stderr, "Callback: UPNP_EVENT_RENEWAL_COMPLETE\n"); + msg << "error(UPNP_EVENT_RENEWAL_COMPLETE): "; + upnpEventRenewalComplete: ++#if UPNP_VERSION >= 10800 ++ UpnpEventSubscribe *es_event = (UpnpEventSubscribe *)Event; ++ int errCode = UpnpEventSubscribe_get_ErrCode(es_event); ++ if (errCode != UPNP_E_SUCCESS) { ++#else + struct Upnp_Event_Subscribe *es_event = + (struct Upnp_Event_Subscribe *)Event; + if (es_event->ErrCode != UPNP_E_SUCCESS) { ++#endif + msg << "Error in Event Subscribe Callback"; ++#if UPNP_VERSION >= 10800 ++ UPnP::ProcessErrorMessage(msg.str(), errCode, NULL, NULL); ++#else + UPnP::ProcessErrorMessage( + msg.str(), es_event->ErrCode, NULL, NULL); ++#endif ++ msg << "Error in Event Subscribe Callback"; + } else { + #if 0 ++#if UPNP_VERSION >= 10800 ++ const UpnpString *publisherUrl = ++ UpnpEventSubscribe_get_PublisherUrl(es_event); ++ const char *sid = UpnpEvent_get_SID_cstr(es_event); ++ int timeOut = UpnpEvent_get_TimeOut(es_event); ++ TvCtrlPointHandleSubscribeUpdate( ++ publisherUrl, sid, timeOut); ++#else + TvCtrlPointHandleSubscribeUpdate( + GET_UPNP_STRING(es_event->PublisherUrl), + es_event->Sid, + es_event->TimeOut ); + #endif ++#endif + } + + break; +@@ -1280,29 +1363,56 @@ upnpEventRenewalComplete: + msg << "error(UPNP_EVENT_SUBSCRIPTION_EXPIRED): "; + msg2 << "UPNP_EVENT_SUBSCRIPTION_EXPIRED: "; + upnpEventSubscriptionExpired: ++#if UPNP_VERSION >= 10800 ++ UpnpEventSubscribe *es_event = (UpnpEventSubscribe *)Event; ++#else + struct Upnp_Event_Subscribe *es_event = + (struct Upnp_Event_Subscribe *)Event; ++#endif + Upnp_SID newSID; + memset(newSID, 0, sizeof(Upnp_SID)); + int TimeOut = 1801; ++#if UPNP_VERSION >= 10800 ++ const char *publisherUrl = ++ UpnpEventSubscribe_get_PublisherUrl_cstr(es_event); ++#endif + int ret = UpnpSubscribe( + upnpCP->m_UPnPClientHandle, ++#if UPNP_VERSION >= 10800 ++ publisherUrl, ++#else + GET_UPNP_STRING(es_event->PublisherUrl), ++#endif + &TimeOut, + newSID); + if (ret != UPNP_E_SUCCESS) { + msg << "Error Subscribing to EventURL"; ++#if UPNP_VERSION >= 10800 ++ int errCode = UpnpEventSubscribe_get_ErrCode(es_event); ++#endif + UPnP::ProcessErrorMessage( ++#if UPNP_VERSION >= 10800 ++ msg.str(), errCode, NULL, NULL); ++#else + msg.str(), es_event->ErrCode, NULL, NULL); ++#endif + } else { + ServiceMap::iterator it = ++#if UPNP_VERSION >= 10800 ++ upnpCP->m_ServiceMap.find(publisherUrl); ++#else + upnpCP->m_ServiceMap.find(GET_UPNP_STRING(es_event->PublisherUrl)); ++#endif + if (it != upnpCP->m_ServiceMap.end()) { + CUPnPService &service = *(it->second); + service.SetTimeout(TimeOut); + service.SetSID(newSID); + msg2 << "Re-subscribed to EventURL '" << ++#if UPNP_VERSION >= 10800 ++ publisherUrl << ++#else + GET_UPNP_STRING(es_event->PublisherUrl) << ++#endif + "' with SID == '" << + newSID << "'."; + AddDebugLogLineC(logUPnP, msg2); +@@ -1321,17 +1431,34 @@ upnpEventSubscriptionExpired: + case UPNP_CONTROL_ACTION_COMPLETE: { + //fprintf(stderr, "Callback: UPNP_CONTROL_ACTION_COMPLETE\n"); + // This is here if we choose to do this asynchronously ++#if UPNP_VERSION >= 10800 ++ UpnpActionComplete *a_event = (UpnpActionComplete *)Event; ++ int errCode = UpnpActionComplete_get_ErrCode(a_event); ++ IXML_Document *actionResult = ++ UpnpActionComplete_get_ActionResult(a_event); ++ if (errCode != UPNP_E_SUCCESS) { ++#else + struct Upnp_Action_Complete *a_event = + (struct Upnp_Action_Complete *)Event; + if (a_event->ErrCode != UPNP_E_SUCCESS) { ++#endif + UPnP::ProcessErrorMessage( + "UpnpSendActionAsync", ++#if UPNP_VERSION >= 10800 ++ errCode, NULL, ++ actionResult); ++#else + a_event->ErrCode, NULL, + a_event->ActionResult); ++#endif + } else { + // Check the response document + UPnP::ProcessActionResponse( ++#if UPNP_VERSION >= 10800 ++ actionResult, ++#else + a_event->ActionResult, ++#endif + ""); + } + /* No need for any processing here, just print out results. +@@ -1342,22 +1469,38 @@ upnpEventSubscriptionExpired: + case UPNP_CONTROL_GET_VAR_COMPLETE: { + //fprintf(stderr, "Callback: UPNP_CONTROL_GET_VAR_COMPLETE\n"); + msg << "error(UPNP_CONTROL_GET_VAR_COMPLETE): "; ++#if UPNP_VERSION >= 10800 ++ UpnpStateVarComplete *sv_event = (UpnpStateVarComplete *)Event; ++ int errCode = UpnpStateVarComplete_get_ErrCode(sv_event); ++ if (errCode != UPNP_E_SUCCESS) { ++#else + struct Upnp_State_Var_Complete *sv_event = + (struct Upnp_State_Var_Complete *)Event; + if (sv_event->ErrCode != UPNP_E_SUCCESS) { ++#endif + msg << "m_UpnpGetServiceVarStatusAsync"; + UPnP::ProcessErrorMessage( ++#if UPNP_VERSION >= 10800 ++ msg.str(), errCode, NULL, NULL); ++#else + msg.str(), sv_event->ErrCode, NULL, NULL); ++#endif + } else { + #if 0 + // Warning: The use of UpnpGetServiceVarStatus and + // UpnpGetServiceVarStatusAsync is deprecated by the + // UPnP forum. ++#if UPNP_VERSION >= 10800 ++ const char *ctrlUrl = ++ UpnpStateVarComplete_get_CtrlUrl(sv_event); ++ const char *stateVarName = ++#else + TvCtrlPointHandleGetVar( + sv_event->CtrlUrl, + sv_event->StateVarName, + sv_event->CurrentVal ); + #endif ++#endif + } + break; + } Property changes on: head/net-p2p/amule-devel/files/patch-src_UPnPBase.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/net-p2p/amule-devel/files/patch-src_UPnPBase.h =================================================================== --- head/net-p2p/amule-devel/files/patch-src_UPnPBase.h (nonexistent) +++ head/net-p2p/amule-devel/files/patch-src_UPnPBase.h (revision 499599) @@ -0,0 +1,18 @@ +--- src/UPnPBase.h.orig 2018-11-19 11:11:51 UTC ++++ src/UPnPBase.h +@@ -489,9 +489,15 @@ public: + + // Callback function + static int Callback( ++#if UPNP_VERSION >= 10800 ++ Upnp_EventType_e EventType, ++ const void *Event, ++ void *Cookie); ++#else + Upnp_EventType EventType, + void* Event, + void* Cookie); ++#endif + + private: + void OnEventReceived( Property changes on: head/net-p2p/amule-devel/files/patch-src_UPnPBase.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property