diff options
| author | orivej <[email protected]> | 2022-02-10 16:44:49 +0300 |
|---|---|---|
| committer | Daniil Cherednik <[email protected]> | 2022-02-10 16:44:49 +0300 |
| commit | 718c552901d703c502ccbefdfc3c9028d608b947 (patch) | |
| tree | 46534a98bbefcd7b1f3faa5b52c138ab27db75b7 /contrib/libs/poco/Net/src/RawSocket.cpp | |
| parent | e9656aae26e0358d5378e5b63dcac5c8dbe0e4d0 (diff) | |
Restoring authorship annotation for <[email protected]>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/poco/Net/src/RawSocket.cpp')
| -rw-r--r-- | contrib/libs/poco/Net/src/RawSocket.cpp | 234 |
1 files changed, 117 insertions, 117 deletions
diff --git a/contrib/libs/poco/Net/src/RawSocket.cpp b/contrib/libs/poco/Net/src/RawSocket.cpp index 7605dcac390..4cd1602ce26 100644 --- a/contrib/libs/poco/Net/src/RawSocket.cpp +++ b/contrib/libs/poco/Net/src/RawSocket.cpp @@ -1,117 +1,117 @@ -// -// RawSocket.cpp -// -// Library: Net -// Package: Sockets -// Module: RawSocket -// -// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. -// and Contributors. -// -// SPDX-License-Identifier: BSL-1.0 -// - - -#include "Poco/Net/RawSocket.h" -#include "Poco/Net/RawSocketImpl.h" -#include "Poco/Exception.h" - - -using Poco::InvalidArgumentException; - - -namespace Poco { -namespace Net { - - -RawSocket::RawSocket(): - Socket(new RawSocketImpl) -{ -} - - -RawSocket::RawSocket(SocketAddress::Family family, int proto): - Socket(new RawSocketImpl(family, proto)) -{ -} - - -RawSocket::RawSocket(const SocketAddress& address, bool reuseAddress): - Socket(new RawSocketImpl(address.family())) -{ - bind(address, reuseAddress); -} - - -RawSocket::RawSocket(const Socket& socket): Socket(socket) -{ - if (!dynamic_cast<RawSocketImpl*>(impl())) - throw InvalidArgumentException("Cannot assign incompatible socket"); -} - - -RawSocket::RawSocket(SocketImpl* pImpl): Socket(pImpl) -{ - if (!dynamic_cast<RawSocketImpl*>(impl())) - throw InvalidArgumentException("Cannot assign incompatible socket"); -} - - -RawSocket::~RawSocket() -{ -} - - -RawSocket& RawSocket::operator = (const Socket& socket) -{ - if (dynamic_cast<RawSocketImpl*>(socket.impl())) - Socket::operator = (socket); - else - throw InvalidArgumentException("Cannot assign incompatible socket"); - return *this; -} - - -void RawSocket::connect(const SocketAddress& address) -{ - impl()->connect(address); -} - - -void RawSocket::bind(const SocketAddress& address, bool reuseAddress) -{ - impl()->bind(address, reuseAddress); -} - - -void RawSocket::bind(const SocketAddress& address, bool reuseAddress, bool reusePort) -{ - impl()->bind(address, reuseAddress, reusePort); -} - - -int RawSocket::sendBytes(const void* buffer, int length, int flags) -{ - return impl()->sendBytes(buffer, length, flags); -} - - -int RawSocket::receiveBytes(void* buffer, int length, int flags) -{ - return impl()->receiveBytes(buffer, length, flags); -} - - -int RawSocket::sendTo(const void* buffer, int length, const SocketAddress& address, int flags) -{ - return impl()->sendTo(buffer, length, address, flags); -} - - -int RawSocket::receiveFrom(void* buffer, int length, SocketAddress& address, int flags) -{ - return impl()->receiveFrom(buffer, length, address, flags); -} - - -} } // namespace Poco::Net +// +// RawSocket.cpp +// +// Library: Net +// Package: Sockets +// Module: RawSocket +// +// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. +// and Contributors. +// +// SPDX-License-Identifier: BSL-1.0 +// + + +#include "Poco/Net/RawSocket.h" +#include "Poco/Net/RawSocketImpl.h" +#include "Poco/Exception.h" + + +using Poco::InvalidArgumentException; + + +namespace Poco { +namespace Net { + + +RawSocket::RawSocket(): + Socket(new RawSocketImpl) +{ +} + + +RawSocket::RawSocket(SocketAddress::Family family, int proto): + Socket(new RawSocketImpl(family, proto)) +{ +} + + +RawSocket::RawSocket(const SocketAddress& address, bool reuseAddress): + Socket(new RawSocketImpl(address.family())) +{ + bind(address, reuseAddress); +} + + +RawSocket::RawSocket(const Socket& socket): Socket(socket) +{ + if (!dynamic_cast<RawSocketImpl*>(impl())) + throw InvalidArgumentException("Cannot assign incompatible socket"); +} + + +RawSocket::RawSocket(SocketImpl* pImpl): Socket(pImpl) +{ + if (!dynamic_cast<RawSocketImpl*>(impl())) + throw InvalidArgumentException("Cannot assign incompatible socket"); +} + + +RawSocket::~RawSocket() +{ +} + + +RawSocket& RawSocket::operator = (const Socket& socket) +{ + if (dynamic_cast<RawSocketImpl*>(socket.impl())) + Socket::operator = (socket); + else + throw InvalidArgumentException("Cannot assign incompatible socket"); + return *this; +} + + +void RawSocket::connect(const SocketAddress& address) +{ + impl()->connect(address); +} + + +void RawSocket::bind(const SocketAddress& address, bool reuseAddress) +{ + impl()->bind(address, reuseAddress); +} + + +void RawSocket::bind(const SocketAddress& address, bool reuseAddress, bool reusePort) +{ + impl()->bind(address, reuseAddress, reusePort); +} + + +int RawSocket::sendBytes(const void* buffer, int length, int flags) +{ + return impl()->sendBytes(buffer, length, flags); +} + + +int RawSocket::receiveBytes(void* buffer, int length, int flags) +{ + return impl()->receiveBytes(buffer, length, flags); +} + + +int RawSocket::sendTo(const void* buffer, int length, const SocketAddress& address, int flags) +{ + return impl()->sendTo(buffer, length, address, flags); +} + + +int RawSocket::receiveFrom(void* buffer, int length, SocketAddress& address, int flags) +{ + return impl()->receiveFrom(buffer, length, address, flags); +} + + +} } // namespace Poco::Net |
