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
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
agora so agente ler nossa estrutura q tem s_name
no caso ele retorno http q e o serviço padrao da porta 80 ^^
by hacker ft315
- 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