Allereerst, in de search kwam ik veel socketvragen tegen maar niet dit specifieke probleem.
Ik heb een socket-client gebouwd aan de hand van deze tuturial: http://www.linuxgazette.com/issue74/tougher.html. Dat werkt allemaal zoals het hoord, behalve als ik wil verbinden naar poort 80. Ik kan geen verbinding maken.
In Socket.cpp (http://www.linuxgazette.c...sc/tougher/Socket.cpp.txt) gaat het verkeerd in de methode connect.
Bij mij wordt status dus -1 ipv 0. De errno heb ik afgevangen en deze heeft als waarde 111 (Connection Refused).
Het vage is dus dat ik wel naar een andere poort kan verbinden, 22 ofzo, maar niet naar 80. Ik heb het naar verscbillende webservers geprobeerd, dus het ligt niet aan de host ofzo.
Iemand een oplossing of idee?
Ik heb een socket-client gebouwd aan de hand van deze tuturial: http://www.linuxgazette.com/issue74/tougher.html. Dat werkt allemaal zoals het hoord, behalve als ik wil verbinden naar poort 80. Ik kan geen verbinding maken.
In Socket.cpp (http://www.linuxgazette.c...sc/tougher/Socket.cpp.txt) gaat het verkeerd in de methode connect.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| bool Socket::connect ( const std::string host, const int port )
{
if ( ! is_valid() ) return false;
m_addr.sin_family = AF_INET;
m_addr.sin_port = htons ( port );
int status = inet_pton ( AF_INET, host.c_str(), &m_addr.sin_addr );
if ( errno == EAFNOSUPPORT ) return false;
status = ::connect ( m_sock, ( sockaddr * ) &m_addr, sizeof ( m_addr ) );
if ( status == 0 )
return true;
else
return false;
} |
Bij mij wordt status dus -1 ipv 0. De errno heb ik afgevangen en deze heeft als waarde 111 (Connection Refused).
Het vage is dus dat ik wel naar een andere poort kan verbinden, 22 ofzo, maar niet naar 80. Ik heb het naar verscbillende webservers geprobeerd, dus het ligt niet aan de host ofzo.
Iemand een oplossing of idee?