nico88desmo
14-02-2007, 15:41
Un saluto a tutti!
Spiego subito il mio problema.
Dovrei realizzare una chat in C utilizzando i socket; questa chat dovrà essere compatibile sia su OS Windows sia su OS Linux (precisamente la distr. Ubuntu 6.10).
Le funzioni per l'utilizzo dei socket le ho per linux...però di windows non conosco veramente nulla.
ora pongo una lista di tutte le funzioni che ho per l'utilizzo dei socket sotto linux;
le scriverò seguendo il seguente prototipo: [utilizzo] [prototipo funzione] [header]
creazione socket int socket() <sys/socket.h>
creazione socket int bind() <sys/socket.h>
connessione socket int connect() <sys/socket.h>
ascolto socket int listen() <sys/socket.h>
attesa connessione socket int accept() <sys/socket.h>
ascolto socket int select() <sys/select.h>
lettura socket ssize_t recvfrom() <sys/socket.h>
lettura socket ssize_t recv() <sys/socket.h>
lettura socket ssize_t read() <unistd.h>
scrittura socket ssize_t sendto() <sys/socket.h>
scrittura socket ssize_t send() <sys/socket.h>
scrittura socket ssize_t write() <unistd.h>
chiusura socket int close() <unistd.h>
chiusura socket int shutdown() <sys/socket.h>
lettura ind. locale socket int gestsockname() <sys/socket.h>
lettura ind. remoto socket int getpeername() <sys/socket.h>
impostazione opzioni socket int setsockopt() <sys/socket.h>
lettura opzioni socket int getsockopt() <sys/socket.h>
conversione indirizzi short int htons() <netinet/in.h>
conversione indirizzi short int ntohs() <netinet/in.h>
conversione indirizzi long int htonl() <netinet/in.h>
conversione indirizzi long int ntohl() <netinet/in.h>
conversione indirizzi int inet_aton() <arpa/inet.h>
conversione indirizzi char *inet_ntoa() <arpa/inet.h>
conversione indirizzi int inet_pton() <arpa/inet.h>
conversione indirizzi char *inet_ntop() <arpa/inet.h>
nome host int gethostname() <unistd.h>
risoluzione nomi struct hostent *gethostbyname() <netdb.h>
risoluzione nomi struct hostent *gethostbyname2() <netdb.h>
risoluzione nomi void sethostent () <netdb.h>
risoluzione nomi void endhostent () <netdb.h>
risoluzione nomi struct hostent *gethostbyaddr() <netdb.h>
nomi di servizi struct servent *getservbyname() <netdb.h>
nomi di servizi struct servent *getservbyport() <netdb.h>
detto questo..
1) utilizzare i socket sia per windows sia per linux...che problemi comporta di preciso?
2) qualcuno mi potrebbe dire quali sono le funzioni per utilizzare i socket in windows?
Grazie in anticipo a tutti!
Spiego subito il mio problema.
Dovrei realizzare una chat in C utilizzando i socket; questa chat dovrà essere compatibile sia su OS Windows sia su OS Linux (precisamente la distr. Ubuntu 6.10).
Le funzioni per l'utilizzo dei socket le ho per linux...però di windows non conosco veramente nulla.
ora pongo una lista di tutte le funzioni che ho per l'utilizzo dei socket sotto linux;
le scriverò seguendo il seguente prototipo: [utilizzo] [prototipo funzione] [header]
creazione socket int socket() <sys/socket.h>
creazione socket int bind() <sys/socket.h>
connessione socket int connect() <sys/socket.h>
ascolto socket int listen() <sys/socket.h>
attesa connessione socket int accept() <sys/socket.h>
ascolto socket int select() <sys/select.h>
lettura socket ssize_t recvfrom() <sys/socket.h>
lettura socket ssize_t recv() <sys/socket.h>
lettura socket ssize_t read() <unistd.h>
scrittura socket ssize_t sendto() <sys/socket.h>
scrittura socket ssize_t send() <sys/socket.h>
scrittura socket ssize_t write() <unistd.h>
chiusura socket int close() <unistd.h>
chiusura socket int shutdown() <sys/socket.h>
lettura ind. locale socket int gestsockname() <sys/socket.h>
lettura ind. remoto socket int getpeername() <sys/socket.h>
impostazione opzioni socket int setsockopt() <sys/socket.h>
lettura opzioni socket int getsockopt() <sys/socket.h>
conversione indirizzi short int htons() <netinet/in.h>
conversione indirizzi short int ntohs() <netinet/in.h>
conversione indirizzi long int htonl() <netinet/in.h>
conversione indirizzi long int ntohl() <netinet/in.h>
conversione indirizzi int inet_aton() <arpa/inet.h>
conversione indirizzi char *inet_ntoa() <arpa/inet.h>
conversione indirizzi int inet_pton() <arpa/inet.h>
conversione indirizzi char *inet_ntop() <arpa/inet.h>
nome host int gethostname() <unistd.h>
risoluzione nomi struct hostent *gethostbyname() <netdb.h>
risoluzione nomi struct hostent *gethostbyname2() <netdb.h>
risoluzione nomi void sethostent () <netdb.h>
risoluzione nomi void endhostent () <netdb.h>
risoluzione nomi struct hostent *gethostbyaddr() <netdb.h>
nomi di servizi struct servent *getservbyname() <netdb.h>
nomi di servizi struct servent *getservbyport() <netdb.h>
detto questo..
1) utilizzare i socket sia per windows sia per linux...che problemi comporta di preciso?
2) qualcuno mi potrebbe dire quali sono le funzioni per utilizzare i socket in windows?
Grazie in anticipo a tutti!