From 41464c3bfab3e6835bb3541d64a6982dcc92bb77 Mon Sep 17 00:00:00 2001 From: "roberto@precise64" Date: Sat, 10 Mar 2012 11:35:05 +0100 Subject: [PATCH] fr sctp fix --- plugins/fastrouter/fr_map.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/plugins/fastrouter/fr_map.c b/plugins/fastrouter/fr_map.c index 5a9f4f70..e6ffea15 100644 --- a/plugins/fastrouter/fr_map.c +++ b/plugins/fastrouter/fr_map.c @@ -141,7 +141,7 @@ int uwsgi_fr_map_use_static_nodes(struct fastrouter_session *fr_session, char ** #ifdef UWSGI_SCTP -void uwsgi_fr_map_use_sctp(struct fastrouter_session *fr_session, char **magic_table) { +int uwsgi_fr_map_use_sctp(struct fastrouter_session *fr_session, char **magic_table) { if (!*uwsgi_fastrouter_sctp_nodes_current) *uwsgi_fastrouter_sctp_nodes_current = *uwsgi_fastrouter_sctp_nodes; @@ -174,7 +174,9 @@ void uwsgi_fr_map_use_sctp(struct fastrouter_session *fr_session, char **magic_t memset(&sinfo, 0, sizeof(struct sctp_sndrcvinfo)); memcpy(&sinfo.sinfo_ppid, &fr_session->uh, sizeof(uint32_t)); sinfo.sinfo_stream = fr_session->fd; - len = sctp_send(choosen_fd, fr_session->buffer, fr_session->uh.pktsize, &sinfo, 0); + ssize_t len = sctp_send(choosen_fd, fr_session->buffer, fr_session->uh.pktsize, &sinfo, 0); + if (len < 0) + uwsgi_error("sctp_send()"); fr_session->instance_fd = choosen_fd; fr_session->status = FASTROUTER_STATUS_SCTP_RESPONSE;