Socket em C/C++ - CLIENT
Publicado por Krownix 24/11/2005
[ Hits: 10.088 ]
Programa que exemplifica o uso da biblioteca winsock2.h para desenvolver um client em c/c++. Este programa transmite uma string pela rede
#include<iostream> #include<stdlib.h> #include<winsock2.h> using namespace std; int main(int argc, char *argv[]) { char str_send[60]; if(argc < 3) { std::cout << "Falta de parametros: " << argv[0] << "<host> <port>" << "\n"; exit(1);} WSADATA WsData; if(WSAStartup(MAKEWORD(2,0), &WsData)!=0) { cout << "Erro iniciar a DLL" << "\n"; exit(1); } SOCKET Send; struct servent *servico; struct hostent *nomehost; struct sockaddr_in alvo; servico=getservbyport(htons(atoi(argv[2])),"tcp"); nomehost=gethostbyname(argv[1]); if(!nomehost) { cout << "Impossivel resolver nome de " << argv[1] << "\n"; exit(1); } Send=socket(AF_INET, SOCK_STREAM,0); alvo.sin_family=AF_INET; alvo.sin_port=htons(atoi(argv[2])); memcpy(&alvo.sin_addr.s_addr, nomehost->h_addr, nomehost->h_length); memset(&alvo.sin_zero, 0x00,8); if(connect(Send,(struct sockaddr *)&alvo,sizeof(alvo))) { cout << "Impossivel COnectar" << "\n"; exit(1); } else { cout << "Conectado em: " << "\n" << "Maquina.: " << argv[1] << "\n" << "Porta.: " << argv[2] << ((servico)?servico->s_name:"desconhecido") << "\n"; } for(;;) { cout << ":"; gets(str_send); send(Send, str_send, sizeof(str_send),0); cout << "\n"; } closesocket(Send); WSACleanup(); return 0; }
Connect - um simples programa para atravessar proxys Socks
Usando sockets para monitorar servidores
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Modernização e Avanço do Linux. (23)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (1)
Mensagem quando tento fazer o apt update && apt upgrade no kal... (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta