]> git.llucax.com Git - software/posixx.git/blobdiff - src/linux/tipc.hpp
Add Boost License
[software/posixx.git] / src / linux / tipc.hpp
index b16bc5168d3f8b4208185614e7239c091fba5453..bd985e504eb32b97b34a8996a82c3c764503f3dd 100644 (file)
@@ -1,3 +1,9 @@
+// Copyright Leandro Lucarella 2008 - 2010.
+// Distributed under the Boost Software License, Version 1.0.
+// (See accompanying file COPYING or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+
 #ifndef POSIXX_LINUX_TIPC_HPP_
 #define POSIXX_LINUX_TIPC_HPP_
 
@@ -315,6 +321,26 @@ struct subscr_event: tipc_event
 
 };
 
+/// Type of TIPC address
+enum type_t
+{
+       ID = TIPC_ADDR_ID,           ///< Port ID
+       NAME = TIPC_ADDR_NAME,       ///< Port name
+       NAMESEQ = TIPC_ADDR_NAMESEQ  ///< Name sequence or multicast
+};
+
+/**
+ * Bind scope.
+ *
+ * @see TIPC documentation: 2.1.2 bind
+ */
+enum scope_t
+{
+       ZONE = TIPC_ZONE_SCOPE,       ///< Zone scope.
+       CLUSTER = TIPC_CLUSTER_SCOPE, ///< Cluster scope.
+       NODE = TIPC_NODE_SCOPE        ///< Node scope.
+};
+
 /**
  * TIPC socket address (name).
  *
@@ -329,26 +355,6 @@ struct subscr_event: tipc_event
 struct sockaddr: sockaddr_tipc
 {
 
-       /// Type of TIPC address
-       enum type_t
-       {
-               ID = TIPC_ADDR_ID, ///< Port ID
-               NAME = TIPC_ADDR_NAME, ///< Port name
-               NAMESEQ = TIPC_ADDR_NAMESEQ ///< Name sequence or multicast
-       };
-
-       /**
-        * Bind scope.
-        *
-        * @see TIPC documentation: 2.1.2 bind
-        */
-       enum scope_t
-       {
-               ZONE = TIPC_ZONE_SCOPE,       ///< Zone scope.
-               CLUSTER = TIPC_CLUSTER_SCOPE, ///< Cluster scope.
-               NODE = TIPC_NODE_SCOPE        ///< Node scope.
-       };
-
        /// Constructor.
        sockaddr() throw ();
 
@@ -641,13 +647,15 @@ posixx::linux::tipc::subscr_event::subscription() const throw ()
 inline
 posixx::linux::tipc::sockaddr::sockaddr() throw ()
 {
+       memset(this, 0, sizeof(*this));
+       family = AF_TIPC;
 }
 
 inline
 posixx::linux::tipc::sockaddr::sockaddr(portid port, scope_t s) throw ()
 {
        family = AF_TIPC;
-       addrtype = TIPC_ADDR_ID;
+       addrtype = ID;
        scope = s;
        addr.id = port;
 }
@@ -657,7 +665,7 @@ posixx::linux::tipc::sockaddr::sockaddr(name name, scope_t s, tipc::addr d)
                throw ()
 {
        family = AF_TIPC;
-       addrtype = TIPC_ADDR_NAME;
+       addrtype = NAME;
        scope = s;
        addr.name.name = name;
        addr.name.domain = d;
@@ -667,13 +675,13 @@ inline
 posixx::linux::tipc::sockaddr::sockaddr(nameseq nameseq, scope_t s) throw ()
 {
        family = AF_TIPC;
-       addrtype = TIPC_ADDR_NAMESEQ;
+       addrtype = NAMESEQ;
        scope = s;
        addr.nameseq = nameseq;
 }
 
 inline
-posixx::linux::tipc::sockaddr::type_t posixx::linux::tipc::sockaddr::type()
+posixx::linux::tipc::type_t posixx::linux::tipc::sockaddr::type()
                const throw ()
 {
        return static_cast< type_t >(addrtype);