UPnPsdk 0.1
Universal Plug and Play +, Software Development Kit
 
Loading...
Searching...
No Matches
connection_common.hpp
Go to the documentation of this file.
1#ifndef UPNPP_0_ADDRESSING_CONNECTION_HPP
2#define UPNPP_0_ADDRESSING_CONNECTION_HPP
3// Copyright (C) 2023+ GPL 3 and higher by Ingo Höft, <Ingo@Hoeft-online.de>
4// Redistribution only with this Copyright remark. Last modified: 2025-05-21
11#ifndef _MSC_VER
12#include <UPnPsdk/socket.hpp>
13
15#include <csignal> // not usable on win32
17
18
19namespace UPnPsdk {
20
41// This is a scoped version just using the constructor and destructor. The last
42// version with methods 'suppress()' and 'restore()' can be found at commit
43// c76d123ffbd6989ff415169b86fe0b27c5a111aa. --Ingo
45 public:
48
49 private:
50 bool m_sigpipe_pending;
51 bool m_sigpipe_unblock;
52};
53
54} // namespace UPnPsdk
55
57#define UPNPLIB_SCOPED_NO_SIGPIPE UPnPsdk::CSigpipe_scoped sigpipe;
58#else // #ifndef _MSC_VER
59// This will the ported program also compile on win32 without error.
60#define UPNPLIB_SCOPED_NO_SIGPIPE
61#endif
63
64#endif // UPNPP_0_ADDRESSING_CONNECTION_HPP
Portable handle SIGPIPE on failed write to a remote closed network socket.
Reengineered Object Oriented UPnP+ program code.
Socket Module: manage properties and methods but not connections of ONE network socket to handle IPv4...
#define UPnPsdk_VIS
Prefix to export symbol for external use.