]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
note that we either write ALL of the data, or NONE of it
authorAlan T. DeKok <aland@freeradius.org>
Thu, 21 Sep 2017 15:57:48 +0000 (11:57 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Thu, 21 Sep 2017 15:57:48 +0000 (11:57 -0400)
src/lib/io/network.c

index 2842d2e1472d407f59a84594f9e68c0accc61e85..43d195f4a6b16ca8c2376f9fb9060959ed755ab7 100644 (file)
@@ -896,9 +896,12 @@ static void fr_network_post_event(UNUSED fr_event_list_t *el, UNUSED struct time
                        continue;
                }
 
-               if ((size_t) rcode < cd->m.data_size) {
-                       // call write function again at some later date.
-               }
+               /*
+                *      We MUST have written all of the data.  It is
+                *      up to the app_io->write() function to track
+                *      any partially written data.
+                */
+               rad_assert((size_t) rcode == cd->m.data_size);
 
                DEBUG3("Sending reply to socket %d", s->fd);
                fr_message_done(&cd->m);