01.01.2013 Views

Liber 000 - Astrum Argentum

Liber 000 - Astrum Argentum

Liber 000 - Astrum Argentum

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

A estrutura padrão em C de um socket pode ser definida da seguinte<br />

maneira :<br />

struct sockaddr_in {<br />

short int sin_family;<br />

unsigned short int sin_port;<br />

struct in_addr sin_addr;<br />

unsigned char sin_zero[8];<br />

}<br />

Cada item destas linhas possuem uma característica importante, são<br />

elas :<br />

short int sin_family; - Tipo de família do socket, sendo que os padrões<br />

mais comuns seriam os seguintes :<br />

a) AF_INET - ARPA INTERNET PROTOCOLS<br />

b) AF_UNIX - UNIX INTERNET PROTOCOLS<br />

c) AF_ISSO - ISO PROTOCOLS<br />

d) AF_NS - XEROX NETWORK SYSTEM PROTOCOLS<br />

unsigned short int sin_port; - Número da porta TCP ou UDP a ser<br />

utilizada para a comunicação dos programas.<br />

struct in_addr sin_addr; - Endereço IP do host destino. Pode ser colocado<br />

de maneira direta ou por uma entrada d edados.<br />

unsigned char sin_zero[8]; - Zera a estrutura do socket. Vamos ver mais a<br />

fernte isto.<br />

A declaração do socket é feita da seguinte maneira :<br />

e_socket = socket(sin_family,<br />

tipo_do_socket_desejado,número_do_protocolo);<br />

Traduzindo para o C ANSI ficaria assim :<br />

e_socket = socket(AF_INET,SOCK_STREAM,0)<br />

Onde o 0 é o número do protocolo e pode ser substituído pelo seguinte :<br />

0 - IP - INTERNET PROTOCOL<br />

1 - ICMP - INTERNET CONTROL MESSAGE PROTOCOL<br />

2 - IGMP - INTERNET GROUP MULTICAST PROTOCOL<br />

3 - GGP - GATEWAY-GATEWAY PROTOCOL<br />

6 - TCP - TRANSMISSION CONTROL PROTOCOL<br />

17 - UDP - USER DATAGRAMA PROTOCOL<br />

Vamos a um exemplo mais completo agora :<br />

26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!