Herakles
Profifragensteller
Moin!
Anfängerfrage: Heftet ein bind(2) ein lokales struct sockaddr_in an einen global definierten Socket auch über die Abarbeitung der Funktion hinaus oder nicht? Oder einfacher gefragt: Ist der folgende Code gültig?
...oder müsste auch das genutzte struct sockaddr_in servaddr global definiert werden?
Grüße
Herakles
Anfängerfrage: Heftet ein bind(2) ein lokales struct sockaddr_in an einen global definierten Socket auch über die Abarbeitung der Funktion hinaus oder nicht? Oder einfacher gefragt: Ist der folgende Code gültig?
Code:
void create_localhost_socket_udp_server( void ) {
struct sockaddr_in servaddr;
memset( &servaddr, 0, sizeof(struct sockaddr_in) );
global.local_socket_I = socket( AF_INET, SOCK_DGRAM, 0 );
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s_addr = htonl("127.0.0.1");
servaddr.sin_port = htons(12345);
bind( global.local_socket_I, (struct sockaddr *)&servaddr, sizeof(servaddr) );
}
...oder müsste auch das genutzte struct sockaddr_in servaddr global definiert werden?
Grüße
Herakles