- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I need a bit of help... I have started from the simple socket server example and because I need the connection information in a parallel task, I have moved the "static SSSCon conn" declaration from the SSSSimpleSocketServerTask() outside of the function declaration.//outside, global
static SSSConn conn;
void SSSSimpleSocketServerTask()
{
int fd_listen, max_socket;
struct sockaddr_in addr;
//static SSSConn conn; //moved outside
...
sss_reset_connection(&conn);
...
send_sss_message(&conn);
...
return;
}
void myTask(SSSCon* conn){
char *welcome = "Welcome from custom task!";
send(conn->fd, welcome, 25, 0);
printf("Connection status: %d", conn->fd);
}
:cry: Unfortunatelly myTask is seing an invalid connection. However the SSSSimpleSocketServerTask is working properly, as before moving the conn declaration outside. What am I doing wrong? (I am not a true SW developer, I mainly deal with FPGA so pardon my basic mistakes...) Thanks!
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Got it!
I should not feed any arguments to myTask, simply reference to the global ressource conn. Confusing was the fact that, when not fed as an argument, the structure is to be accessed asconn.fd
instead of conn->fd
(not clear why?)
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page