- void check_state(bool) const;
- int get_option(int, int, void *, socklen_t *);
- unsigned do_write(const char *, unsigned);
- unsigned do_read(char *, unsigned);
+public:
+ ~Socket();
+
+ virtual void set_block(bool);
+ virtual const IO::Handle &get_event_handle();
+
+ /** Associates the socket with a local address. There must be no existing
+ users of the address. */
+ void bind(const SockAddr &);
+
+ const SockAddr &get_local_address() const;
+
+ void set_timeout(const Time::TimeDelta &);
+protected:
+ int set_option(int, int, const void *, socklen_t);
+ int get_option(int, int, void *, socklen_t *) const;