Descritor de protocolo

Publicado por Enzo de Brito Ferber 29/12/2006

[ Hits: 6.415 ]

Homepage: http://www.maximasonorizacao.com.br

Download getserv.c




Programa que descreve e dá o nome do serviço se fornecida uma porta, ou dá a porta se fornecido o nome.

Usa as funções getopt(), getservbyname() e getservbyport() da biblioteca padrão do *nix.

  



Esconder código-fonte

#include <stdio.h>
#include <netdb.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[]){
    struct servent *service;
    char *proto;
    if(argc != 3){
        fprintf(stderr, "Usage 1: %s -p <port>\n", argv[0]);
        fprintf(stderr, "Usage 2: %s -n <protocol_name>\n", argv[0]);
        exit(-1);
    }
    switch(getopt(argc, argv, "p:n:")){
        case 'p':
            service = getservbyport(htons(atoi(optarg)), NULL);
            printf("Service : %s\n", service->s_name);
            printf("Port    : %d\n", ntohs(service->s_port));
            printf("Protocol: %s\n", service->s_proto);
            return 0;
        case 'n':
            service = getservbyname(optarg, NULL);
            printf("Service : %s\n", service->s_name);
            printf("Port    : %d\n", ntohs(service->s_port));
            printf("Protocol: %s\n", service->s_proto);
            return 0;
    }
    return 0;
}
 

Scripts recomendados

Exemplo Básico de Sockets em C

Servidor TCP/IP em C

Sniffer ICMP

Tratando o log do snmptrapd

Script de smbstatus


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts