Lab08.pdf

690 palavras 3 páginas
ECO008 – Redes de Computadores
Lab. 08 – API Socket

Grupo
Data:

No.:

_____________

_____/______/_____

Exercício: Estudo das funções write e close
1. Leia o manual sobre a função write:

man –s2 write

2. Qual o protótipo da função ?
R:
3. Qual o valor de retorno da função ?
R:
4. Quais são os arquivos de headers a serem incluídos ?
R:
5. O que indica o primeiro parâmetro fildes ?
R:
6. O que indica o segundo parâmetro *buf ?
R:
7. O que indica o terceiro parâmetro nbyte ?
R:
8. Leia o manual sobre a função close:

man close

9. Qual o protótipo da função ?
R:
10. Qual o valor de retorno da função ?
R:
11. Quais são os arquivos de headers a serem incluídos ?
R:
12. O que indica o primeiro parâmetro fildes ?
R:
13. Iremos construir agora um programa servidor para um serviço daytime alternativo, na porta 3500. Usaremos as funções da API socket estudadas nos laboratórios anteriores. Faça um programa que:
a) defina a constante LISTENQ contendo o valor 1024. Usaremos a constante
LISTENQ para especificar o número máximo de conexões de clientes que serão permitidas.
b) solicite um número de porta, com default "3500", armazenando na variável port.

c) crie um socket listenfd, do tipo SOCK_STREAM, da família IPv4
(AF_INET), através da chamada à função socket. Teste o valor de retorno. Caso haja erro, imprima uma mensagem de erro e encerre a execução com exit(1), tal como visto no laboratório 01.
d) chame as funções bzero, htonl, e htons para preparar os parâmetros para a função bind, tal como visto nos laboratórios anteriores.
e) chame a função bind, usando como parâmetros listenfd, servaddr e o tamanho de servaddr. Teste o valor de retorno. Caso haja erro, imprima uma mensagem de erro e encerre a execução com exit(1), tal como visto no laboratório 01.
f) chame a função listen, usando como parâmetros listenfd, e LISTENQ.
Teste o valor de retorno. Caso haja erro, imprima uma mensagem de erro e encerre a

Relacionados

  • pdi 2014-2018 - verso final
    169307 palavras | 678 páginas