X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FProtocols%2FUN%2FUNProtocol.hh;h=2475cf96b7f0f6b011fc2bcca62714eac775164a;hb=63b650afb727cce067817ce9451eecb932446bf3;hp=578bc86c677ec440ea739453b89313dafe3f0a2f;hpb=745b3c63dc0a3d0c253568c12417421e8ebea125;p=senf.git diff --git a/Socket/Protocols/UN/UNProtocol.hh b/Socket/Protocols/UN/UNProtocol.hh index 578bc86..2475cf9 100644 --- a/Socket/Protocols/UN/UNProtocol.hh +++ b/Socket/Protocols/UN/UNProtocol.hh @@ -1,6 +1,9 @@ // $Id$ // // Copyright (C) 2007 +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY +// David Wagner // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -57,6 +60,27 @@ namespace senf { /**< \todo make this obsolete by allowing access to the ClientSocketHandle from ConcreateSocketProtocol \param[in] address Address to set */ + + virtual void close() const; ///< Close socket + /**< This override will automatically \c shutdown() the + socket whenever it is closed. + \throws senf::SystemException */ + virtual void terminate() const; ///< Forcibly close socket + /**< This override will automatically \c shutdown() the + socket whenever it is called. Additionally it will + disable SO_LINGER to ensure, that v_terminate will not + block. Like the overriden method, this member will ignore + failures and will never throw. It therefore safe to be + called from a destructor. */ ///\name Abstract Interface Implementation + ///@{ + + unsigned available() const; + bool eof() const; + + private: + void check_and_unlink() const; + + std::string path_; }; }