X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FProtocols%2FUN%2FUNAddressing.hh;h=f30cfdd82e7dd18b15880fe3f95fe748eb59f6f2;hb=4225a17d92c3692e6d3f96a8dd5cb432cd402e61;hp=4529e9150e74b2112addce9ce625b9233bf9f3cb;hpb=0de6c83e2769c7deb2ed3c57d7b26e8cb3fcca04;p=senf.git diff --git a/Socket/Protocols/UN/UNAddressing.hh b/Socket/Protocols/UN/UNAddressing.hh index 4529e91..f30cfdd 100644 --- a/Socket/Protocols/UN/UNAddressing.hh +++ b/Socket/Protocols/UN/UNAddressing.hh @@ -40,26 +40,55 @@ //#include "UNAddressing.mpp" ///////////////////////////////hh.p//////////////////////////////////////// namespace senf { + /** \brief Unix domain socket address + + UNSocketAddress wraps the standard sockaddr_un datatype. It provides simple accessor methods + to access the path. + + \implementation This implementation is based on sockaddr_un. + + \ingroup addr_group + */ class UNSocketAddress : public ComparableSafeBool { public: - //UNSocketAddress(); + //UNSocketAddress(); explicit UNSocketAddress(boost::filesystem::path p); - ///< Construct an address constant - static UNSocketAddress from_string(std::string const s); - static UNSocketAddress from_path(boost::filesystem::path const p); - static std::string path(); - static sockaddr_un sockaddr(); - struct sockaddr * sockaddr_p(); + ///< Construct an address constant from given path + static UNSocketAddress from_string(std::string const s); ///< Create UNSocketAddress from string + static UNSocketAddress from_path(boost::filesystem::path const p); ///< Create UNSocketAddress from path + std::string path() const ; ///< Return path as string + struct sockaddr_un sockaddr(); + struct sockaddr * sockaddr_p() ; struct sockaddr const * sockaddr_p() const; - unsigned sockaddr_len() const; + unsigned sockaddr_len(); private: - static struct sockaddr_un sockAddr; + struct sockaddr_un sockAddr; }; + + /** \brief Write path os + + \related UNSocketAddress + */ std::ostream & operator<<(std::ostream & os, UNSocketAddress const & addr); + /// \addtogroup policy_impl_group + /// @{ + + /** \brief Addressing policy supporting unix domain addressing + + \par Address Type: + UNAddress + + This addressing policy implements addressing using unix domain + addresses. + + The various members are directly imported from + GenericAddressingPolicy which see for a detailed + documentation. + */ struct UNAddressingPolicy : public AddressingPolicyBase,