seja bem vindo ao forum eof, caso nao seja cadastrado se cadastre para poder visualizar todo o conteudo ^^

Participe do fórum, é rápido e fácil

seja bem vindo ao forum eof, caso nao seja cadastrado se cadastre para poder visualizar todo o conteudo ^^
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Você não está conectado. Conecte-se ou registre-se

[tutorial] socket em c - converter porta para nome do serviço (windows)

Ir para baixo  Mensagem [Página 1 de 1]

Kodo no Kami

Kodo no Kami
master
master

bom galera mais um tutorial de socket em c, nesse eu vou falar de como descobrir o nome do serviço rodando na porta, para isso vamos usar a estrutura servent e a funçao getservbyport tambem temos q iniciar o serviço wsa e usar a biblioteca winsock2.h, vamos declarar winsock2.h e criar a estrutura e iniciar o serviço wsa

Código:
#include <stdio.h>
#include <winsock2.h>

int main(void)
{
  struct servent *serv;
 
  WSADATA wsa;
  WSAStartup(MAKEWORD(2,0),&wsa);
}

agora vamos usar a funçao getservbyport passa como argumento a porta usando a funçao htons para converter e o protocolo no caso "TCP" ou "UDP" depois atribuir a funçao a nossa estrutura

Código:
#include <stdio.h>
#include <winsock2.h>

int main(void)
{
  struct servent *serv;
 
  WSADATA wsa;
  WSAStartup(MAKEWORD(2,0),&wsa);
 
  serv = getservbyport(htons(80),"TCP");
}

agora so agente ler nossa estrutura q tem s_name

Código:
#include <stdio.h>
#include <winsock2.h>

int main(void)
{
  struct servent *serv;
 
  WSADATA wsa;
  WSAStartup(MAKEWORD(2,0),&wsa);
 
  serv = getservbyport(htons(80),"TCP");
 
  printf("%s",serv->s_name);
}

no caso ele retorno http q e o serviço padrao da porta 80 ^^

by hacker ft315

https://endoffile.umforum.net

Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos