PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Client Socket Problem!



suse
15-04-2003, 21:38
Hallo...

bin neu hier... und brauch eure hilfe...
Nun das Problem....


#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>

int main()
{
int socket_nummer;
int laenge;
struct sockaddr_in adressinfo;
int ergebnis;

socket_nummer = socket(AF_INET, SOCK_STREAM, 0);

adressinfo.sin_family = AF_INET;
adressinfo.sin_addr.s_addr = inet_addr("192.168.103.10");
adressinfo.sin_port = 258;
laenge = sizeof(adressinfo);

ergebnis = connect(socket_nummer,&adressinfo,laenge);

if (ergebnis == 0)
{
printf("\nVerbindungsaufbau erfolgreich");
}
else
{
perror("Fehler beim Verbindungsaufbau:");
}

close(socket_nummer);

printf("\n\n");
}

Das ist der Code für eine einfache Socket Programmierung!
Es soll einfach nur testen ob ein bestimmter Port auf einem Rechner frei sein soll!
So sollte es sein.
Doch beim Compelieren kommt vollgender fehler...
-> bei connect soll es einen fehler geben und zwei beim 2 Parameter "&adressinfo"!
Könnte mir vielleicht da einer helfen... ich weiss einfach nicht wo der Fehler liegt!

gruss
suse

anda_skoa
15-04-2003, 22:01
Ich glaube du musst auf sockaddr* casten.

Und bitte bearbeite dein Posting und gib Code tags um den Code. Danke.

Ciao,
_

suse
15-04-2003, 23:44
Oh das mit den Tags habe ich leider nicht gewusst!
Habe es behoben...
Kommt immer noch dir Fehlermeldung....

warning: passing arg 2 of `connect' from incompatible pointer type

Wäre echt nett wenn mir einer denn Fehler melden würde!

gruss
suse

tkortkamp
15-04-2003, 23:52
Original geschrieben von suse
Oh das mit den Tags habe ich leider nicht gewusst!
Habe es behoben...
Kommt immer noch dir Fehlermeldung....

warning: passing arg 2 of `connect' from incompatible pointer type

Wäre echt nett wenn mir einer denn Fehler melden würde!

gruss
suse
Hi!

anda_skoa hat dir doch schon die Lösung gesagt :)
Ändere das hier:


ergebnis = connect(socket_nummer,&adressinfo,laenge);

in das hier:


ergebnis = connect(socket_nummer,(struct sockaddr*)&adressinfo,laenge);


c ya,
Tobias

suse
15-04-2003, 23:58
Alles klar ... habe es gerade ....
Vielen Dank!

gruss
suse..

anda_skoa
16-04-2003, 09:38
Original geschrieben von suse
Oh das mit den Tags habe ich leider nicht gewusst!


Kein Problem, war kein Vorwurf, nur ein Hinweis.



Habe es behoben...


Thx :)

Ciao,
_