]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
rx-readpacket-leak-20060728
authorTom Keiser <tkeiser@gmail.com>
Mon, 31 Jul 2006 16:07:49 +0000 (16:07 +0000)
committerDerrick Brashear <shadow@dementia.org>
Mon, 31 Jul 2006 16:07:49 +0000 (16:07 +0000)
avoid just allocating packets forever

src/rx/rx_kcommon.c
src/rx/rx_packet.c

index 7533eebe70996ba24bd1b0da39333fdc023a295d..aa0e87a4ad827dd91ebaabefa221c7b9ba9b56cb 100644 (file)
@@ -1149,9 +1149,7 @@ rxk_ReadPacket(osi_socket so, struct rx_packet *p,
     if (!code) {
        p->length = nbytes - RX_HEADER_SIZE;;
        if ((nbytes > tlen) || (p->length & 0x8000)) {  /* Bogus packet */
-           if (nbytes > 0)
-               rxi_MorePackets(rx_initSendWindow);
-           else {
+           if (nbytes <= 0) {
                MUTEX_ENTER(&rx_stats_mutex);
                rx_stats.bogusPacketOnRead++;
                switch (rx_ssfamily(saddr)) {
index b3b0457ae4a83b8fde85785fee21c2a65506dc5b..7028e8dc908dd17b35f826b1a91ab250b2b30f3f 100644 (file)
@@ -1394,13 +1394,11 @@ rxi_ReadPacket(osi_socket socket, register struct rx_packet *p,
 
     p->length = (nbytes - RX_HEADER_SIZE);
     if ((nbytes > tlen) || (p->length & 0x8000)) {     /* Bogus packet */
-       if (nbytes > 0)
-           rxi_MorePackets(rx_initSendWindow);
-       else if (nbytes < 0 && errno == EWOULDBLOCK) {
+       if (nbytes < 0 && errno == EWOULDBLOCK) {
            MUTEX_ENTER(&rx_stats_mutex);
            rx_stats.noPacketOnRead++;
            MUTEX_EXIT(&rx_stats_mutex);
-       } else {
+       } else if (nbytes <= 0) {
            MUTEX_ENTER(&rx_stats_mutex);
            rx_stats.bogusPacketOnRead++;
            switch (rx_ssfamily(saddr)) {