/* */ #include "MultiUrlRequestInfo.h" #include #include #include #include "RequestGroupMan.h" #include "DownloadEngine.h" #include "LogFactory.h" #include "Logger.h" #include "RequestGroup.h" #include "prefs.h" #include "DownloadEngineFactory.h" #include "RecoverableException.h" #include "message.h" #include "util.h" #include "Option.h" #include "StatCalc.h" #include "CookieStorage.h" #include "File.h" #include "Netrc.h" #include "AuthConfigFactory.h" #include "SessionSerializer.h" #include "TimeA2.h" #include "fmt.h" #include "SocketCore.h" #include "OutputFile.h" #include "UriListParser.h" #include "SingletonHolder.h" #include "Notifier.h" #ifdef ENABLE_WEBSOCKET # include "WebSocketSessionMan.h" #else // !ENABLE_WEBSOCKET # include "NullWebSocketSessionMan.h" #endif // !ENABLE_WEBSOCKET #ifdef ENABLE_SSL # include "TLSContext.h" #endif // ENABLE_SSL #ifdef ENABLE_ASYNC_DNS #include "AsyncNameResolver.h" #endif // ENABLE_ASYNC_DNS namespace aria2 { namespace global { extern volatile sig_atomic_t globalHaltRequested; } // namespace global namespace { void handler(int signal) { if( #ifdef SIGHUP signal == SIGHUP || #endif // SIGHUP signal == SIGTERM) { if(global::globalHaltRequested == 0 || global::globalHaltRequested == 2) { global::globalHaltRequested = 3; } } else { if(global::globalHaltRequested == 0) { global::globalHaltRequested = 1; } else if(global::globalHaltRequested == 2) { global::globalHaltRequested = 3; } } } } // namespace MultiUrlRequestInfo::MultiUrlRequestInfo (std::vector >& requestGroups, const SharedHandle