[BACK]Return to ring.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / telnet

Diff for /src/usr.bin/telnet/ring.c between version 1.5 and 1.6

version 1.5, 2003/06/03 02:56:18 version 1.6, 2014/07/19 23:50:38
Line 94 
Line 94 
   
     ring->top = ring->bottom+ring->size;      ring->top = ring->bottom+ring->size;
   
 #if    defined(ENCRYPTION)  
     ring->clearto = 0;  
 #endif  
   
     return 1;      return 1;
 }  }
   
Line 167 
Line 163 
                 (ring_subtract(ring, ring->mark, ring->consume) < count)) {                  (ring_subtract(ring, ring->mark, ring->consume) < count)) {
         ring->mark = 0;          ring->mark = 0;
     }      }
 #if    defined(ENCRYPTION)  
     if (ring->consume < ring->clearto &&  
                ring->clearto <= ring->consume + count)  
         ring->clearto = 0;  
     else if (ring->consume + count > ring->top &&  
                ring->bottom <= ring->clearto &&  
                ring->bottom + ((ring->consume + count) - ring->top))  
         ring->clearto = 0;  
 #endif  
     ring->consume = ring_increment(ring, ring->consume, count);      ring->consume = ring_increment(ring, ring->consume, count);
     ring->consumetime = ++ring_clock;      ring->consumetime = ++ring_clock;
     /*      /*
Line 283 
Line 270 
         buffer += i;          buffer += i;
     }      }
 }  }
   
 #ifdef notdef  
   
 /*  
  * Move data from the "consume" portion of the ring buffer  
  */  
     void  
 ring_consume_data(ring, buffer, count)  
     Ring *ring;  
     unsigned char *buffer;  
     int count;  
 {  
     int i;  
   
     while (count) {  
         i = MIN(count, ring_full_consecutive(ring));  
         memmove(buffer, ring->consume, i);  
         ring_consumed(ring, i);  
         count -= i;  
         buffer += i;  
     }  
 }  
 #endif  
   
 #if    defined(ENCRYPTION)  
 void  
 ring_encrypt(Ring *ring, void (*encryptor)())  
 {  
     unsigned char *s, *c;  
   
     if (ring_empty(ring) || ring->clearto == ring->supply)  
         return;  
   
     if (!(c = ring->clearto))  
         c = ring->consume;  
   
     s = ring->supply;  
   
     if (s <= c) {  
         (*encryptor)(c, ring->top - c);  
         (*encryptor)(ring->bottom, s - ring->bottom);  
     } else  
         (*encryptor)(c, s - c);  
   
     ring->clearto = ring->supply;  
 }  
   
 void  
 ring_clearto(Ring *ring)  
 {  
     if (!ring_empty(ring))  
         ring->clearto = ring->supply;  
     else  
         ring->clearto = 0;  
 }  
 #endif  
   

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6