Ticket #221: auth.diff

File auth.diff, 2.4 KB (added by each, 9 years ago)
  • asio_link.cc

     
    6767class TCPEndpoint : public IOEndpoint {
    6868public:
    6969    TCPEndpoint(const IOAddress& address, const unsigned short port) :
    70         asio_endpoint_placeholder_(
    71             new tcp::endpoint(ip::address::from_string(address.toText()),
    72                               port)),
    73         asio_endpoint_(*asio_endpoint_placeholder_)
     70        asio_endpoint_(tcp::endpoint(ip::address::from_string(address.toText()),
     71                              port))
    7472    {}
    7573    TCPEndpoint(const tcp::endpoint& asio_endpoint) :
    76         asio_endpoint_placeholder_(NULL), asio_endpoint_(asio_endpoint)
     74        asio_endpoint_(asio_endpoint)
    7775    {}
    7876       
    79     ~TCPEndpoint() { delete asio_endpoint_placeholder_; }
    8077    virtual IOAddress getAddress() const {
    8178        return (asio_endpoint_.address());
    8279    }
    8380private:
    84     const tcp::endpoint* asio_endpoint_placeholder_;
    85     const tcp::endpoint& asio_endpoint_;
     81    const tcp::endpoint asio_endpoint_;
    8682};
    8783
    8884class UDPEndpoint : public IOEndpoint {
    8985public:
    9086    UDPEndpoint(const IOAddress& address, const unsigned short port) :
    91         asio_endpoint_placeholder_(
    92             new udp::endpoint(ip::address::from_string(address.toText()),
    93                               port)),
    94         asio_endpoint_(*asio_endpoint_placeholder_)
     87        asio_endpoint_(udp::endpoint(ip::address::from_string(address.toText()),
     88                                     port))
    9589    {}
    9690    UDPEndpoint(const udp::endpoint& asio_endpoint) :
    97         asio_endpoint_placeholder_(NULL), asio_endpoint_(asio_endpoint)
     91        asio_endpoint_(asio_endpoint)
    9892    {}
    99     ~UDPEndpoint() { delete asio_endpoint_placeholder_; }
    10093    virtual IOAddress getAddress() const {
    10194        return (asio_endpoint_.address());
    10295    }
    10396private:
    104     const udp::endpoint* asio_endpoint_placeholder_;
    105     const udp::endpoint& asio_endpoint_;
     97    const udp::endpoint asio_endpoint_;
    10698};
    10799
    108100const IOEndpoint*
  • asio_link.h

     
    2929
    3030#include <exceptions/exceptions.h>
    3131
    32 namespace asio {
    33 class io_service;
    34 namespace ip {
    35 class address;
    36 }
    37 }
    38 
    3932class AuthSrv;
    4033
    4134/// \namespace asio_link