Пространство имен so_4::socket


Подробное описание

Средства поддержки сокетов.


Классы

class  socket_addr_t
 Базовый тип для адреса сокета. Подробнее...
class  socket_addr_inet_t
 Адрес сокета для протокола PF_INET. Подробнее...
class  socket_t
 Базовый класс для сокетов. Подробнее...
class  socket_client_t
 Клиентский сокет. Подробнее...
class  socket_accepted_t
 Клиент, подключившийся к серверному сокету. Подробнее...
class  socket_server_t
 Серверный потоковый сокет. Подробнее...
struct  os_sockaddr_inet_t

Пространства имен

namespace  channels
 физических коммуникационных каналов.

Функции

int sys_errno ()
 Определение системного кода ошибки.
bool translate_socket_addr (const char *addr, unsigned short &port, char *&hostaddr, char *&hostname)
 Разобрать адрес в формате '{ip|name}:port' на составляющие.
static bool translate_port (const char *port, unsigned short &value)
static bool translate_name (const char *addr, unsigned short &port, char *&hostname)

Переменные

const int c_ok
 Успешное завершение работы.
const int c_invalid_host_addr
 Не допустимый адрес хоста.
const int c_invalid_host_name
 Не допустимое имя хоста.
const int c_bad_argument
 Не допустимый аргумент.
const int c_unsupported_protocol
 Указанный протокол не поддерживается.
const int c_socket_created
 Сокет уже создан.
const int c_cannot_create_socket
 Невозможно создать сокет.
const int c_cannot_bind_socket
 Невозможно назначить имя сокету.
const int c_socket_not_created
 Сокет не создан.
const int c_recv_failed
 Обшибка при работе с recv.
const int c_send_failed
 Ошибка при работе с send.
const int c_select_failed
 Ошибка при работе с select.
const int c_time_out
 Превышено время ожидания.
const int c_connect_failed
 Ошибка при работе с connect.
const int c_listen_failed
 Ошибка при работе с listen.
const int c_accept_failed
 Ошибка при работе с accept.
const int c_read_failed
 Ошибка при работе с read.
const int c_write_failed
 Ошибка при работе с write.
const char c_port_separator


Функции

int so_4::socket::sys_errno  ) 
 

Определение системного кода ошибки.

Под Win32 возвращается WSAGetLastError(). На остальных платформах -- errno.

bool so_4::socket::translate_socket_addr const char *  addr,
unsigned short &  port,
char *&  hostaddr,
char *&  hostname
 

Разобрать адрес в формате '{ip|name}:port' на составляющие.

Если разбор удается, то возвращается true, а в hostaddr или в hostname помещается указатель на динамически созданную строку с соответствующую часть адреса.

В случае, если addr содержит ":port", то заполняется только port.

Аргументы:
addr  Адрес для разбора.
port  Приемник номер порта. Заполняется всегда.
hostaddr  Приемник IP-адреса. Заполняется, если addr содержит IP-адрес. В противном случае получает значение 0.
hostname  Приемник имени хоста. Заполняется, если addr содержит имя хоста. В противном случае получает значение 0.


Переменные

const int so_4::socket::c_bad_argument
 

Не допустимый аргумент.

Может возвращаться для нулевых указателей; значений, не попадающих в какой-либо диапазон; значений, не удовлетворяющих текущему состоянию объекта; отсутствующих значений и т.д.

const int so_4::socket::c_cannot_bind_socket
 

Невозможно назначить имя сокету.

Возвращается при невозможности выполнить операцию bind для серверного сокета.

const int so_4::socket::c_cannot_create_socket
 

Невозможно создать сокет.

Возвращается, если по какой-либо причине не удалось создать сокет.

const int so_4::socket::c_connect_failed
 

Ошибка при работе с connect.

Может возвращаться при невозможности установить соединение с серверным сокетом.

const int so_4::socket::c_socket_created
 

Сокет уже создан.

Может возвращаться при повторной попытке создать сокет.

const int so_4::socket::c_socket_not_created
 

Сокет не создан.

Может возвращаеться при попытке выполнить операцию над не созданным сокетом.

const int so_4::socket::c_unsupported_protocol
 

Указанный протокол не поддерживается.

В текущей версии поддерживается только протокол PF_INET.


Документация по SObjectizer. Последние изменения: Thu Jan 12 10:52:52 2006. Создано системой  doxygen 1.4.6-NO
Hosted by uCoz