Entonces es incorrecto usar connect(); en una conexión por UDP
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#include <sys/types.h>
#define FAMILIA AF_INET
#define PUERTO_INICIO 0
#define PUERTO_FIN 65535
int main(int argv,char *argc[]){
if(argc[1] == NULL){
printf("( Dirección Invalida )\n");
return -1;
}
struct sockaddr_in conectar;
conectar.sin_family = FAMILIA;
inet_aton ( argc[1] , &(conectar.sin_addr));
memset(conectar.sin_zero,0,8);
for(int i = PUERTO_INICIO ;i <= PUERTO_FIN ; i++ ){
int sock = socket( FAMILIA , SOCK_DGRAM , 0 );
conectar.sin_port = htons(i);
int Sconnect;
socklen_t tam;
tam = sizeof(sockaddr);
Sconnect = connect(sock, (sockaddr *)&conectar , tam);
if(Sconnect == -1){
//printf("%d - Cerrado \n",i);
}else{
printf("%d - Abierto \n",i);
}
close(Sconnect);
close(sock);
}
return 0;
}
Cita de: mansan[a] en 31 Julio 2011, 10:34 AM
eso es porque encajan bien en el perfil de geek y cuando menos vida externa del pc tengas, más tiempo tienes para programar.