Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Conexus 0.5.0 Released

2007-03-11
2013-04-17
  • This release features some changes to Conexus that include
    restructuring some classes, flattening the inheritance
    hierarchy in some places, and adding/extending support for
    new Endpoints such as the MessageQueue endpoint which provides
    support for kernel message queues.

    Perhaps the single largest change is the approach taken with
    the Data object, which now maintains internal storage as a
    smart pointer and provides an interface for managing the
    contained storage allowing for better copy semantics.

    Additionally, the read/write hierarchy has been modified
    to allow Endpoints to be created easier through inheritance,
    and also adds threading support.

    Changelog:
    2007-03-10 Rick L Vinyard Jr <rvinyard@cs.nmsu.edu>
      ===== 0.5.0 =====
     
      Changed Error classes to Exception classes to better reflect their role in
      the library.

      Added support for detecting either boost smart pointers or std::tr1 smart pointers

      Added support for kernel message queues as an endpoint.

      Conexus::Endpoint: Added threading support to read/write operations

      Conexus::Data:
        Added support for associating a time value with a data item
        Added support for associating a priority value with a data item
        Made the Data item a proxy to an internal storage item for syntactic reasons.

      Conexus::Address: Changed the sockaddr_storage member to a union of various
        socket API address types for convenience.

      Conexus::File:
        Eliminated RWFileDescriptor as parent; now is just FileDescriptor.
        Added mode and eof support.

      Moved Conexus::IP::IP to Conexus::IP

      Conexus::FileDescriptor: Restructured to support new read_data() and write_data()
      virtual methods.

      Added support for setting global multicast defaults

      Conexus::TTY: Restructured  to support new read_data() and write_data()
      virtual methods.
     
      Conexus::Socket: Restructured  to support new read_data() and write_data()
      virtual methods.
     
      Conexus::Pipe: Restructured  to support new read_data() and write_data()
      virtual methods.

      IPv4::UDPPoset: Added more overloaded add_destination() methods for adding
      addresses to the PO set.
     
      IPv6::UDPPoset: Added more overloaded add_destination() methods for adding
      addresses to the PO set.

      IPv4::Address: Added changed signals for the address, port and prefix.

      IPv6::Address:
        Added constructor for uint32_t address and port.
        Added constructor for string hostname and port.
        Added support for accessing IPv6 dataflow id.
        Added support for accessing IPv6 scope id.
        Added struct sockaddr_in6* operator.
        Added changed signals for address, port, prefix, flow id and scope id.
     
      IPv4::IP:
        Added a virtual base method for connecting to an address.
        Added a virtual base method for returning the local address.
        Added overloaded virtual base methods for setting the remote
        address from a uint32_t or a hostname string.

      IPv4::TCP: Added overloaded create() methods to accept uint32_t or hostname string.
       
      IPv4::TCPServer: Added overloaded create() methods to accept uint32_t or hostname string.

      IPv4::UDP:
        Added overloaded create() methods to accept uint32_t or hostname string.
        Added support for managing specific interfaces when multicasting.
        Added methods for suppressing multicast join messages.
       
      IPv6::IP:
        Added a virtual base method for connecting to an address.
        Added a virtual base method for returning the local address.
        Added overloaded virtual base methods for setting the remote
        address from a uint32_t, struct in6_addr, or a hostname string.

      IPv6::TCP: Added overloaded create() methods to accept uint32_t, in6_addr or hostname string.

      IPv6::TCPServer: Added overloaded create() methods to accept uint32_t, in6_addr or hostname string.

      IPv6::UDP:
        Added overloaded create() methods to accept uint32_t, in6_addr or hostname string.
        Added support for managing specific interfaces when multicasting.
        Added methods for suppressing multicast join messages.

      conexus.pc.in: Added support for static linking and fixed Libs