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

Diff for /src/usr.bin/ssh/Attic/buffer.c between version 1.13 and 1.13.4.1

version 1.13, 2001/04/12 19:15:24 version 1.13.4.1, 2002/03/07 17:37:46
Line 53 
Line 53 
 /* Appends data to the buffer, expanding it if necessary. */  /* Appends data to the buffer, expanding it if necessary. */
   
 void  void
 buffer_append(Buffer *buffer, const char *data, u_int len)  buffer_append(Buffer *buffer, const void *data, u_int len)
 {  {
         char *cp;          void *p;
         buffer_append_space(buffer, &cp, len);          p = buffer_append_space(buffer, len);
         memcpy(cp, data, len);          memcpy(p, data, len);
 }  }
   
 /*  /*
Line 66 
Line 66 
  * to the allocated region.   * to the allocated region.
  */   */
   
 void  void *
 buffer_append_space(Buffer *buffer, char **datap, u_int len)  buffer_append_space(Buffer *buffer, u_int len)
 {  {
           void *p;
   
         /* If the buffer is empty, start using it from the beginning. */          /* If the buffer is empty, start using it from the beginning. */
         if (buffer->offset == buffer->end) {          if (buffer->offset == buffer->end) {
                 buffer->offset = 0;                  buffer->offset = 0;
Line 77 
Line 79 
 restart:  restart:
         /* If there is enough space to store all data, store it now. */          /* If there is enough space to store all data, store it now. */
         if (buffer->end + len < buffer->alloc) {          if (buffer->end + len < buffer->alloc) {
                 *datap = buffer->buf + buffer->end;                  p = buffer->buf + buffer->end;
                 buffer->end += len;                  buffer->end += len;
                 return;                  return p;
         }          }
         /*          /*
          * If the buffer is quite empty, but all data is at the end, move the           * If the buffer is quite empty, but all data is at the end, move the
Line 96 
Line 98 
         buffer->alloc += len + 32768;          buffer->alloc += len + 32768;
         buffer->buf = xrealloc(buffer->buf, buffer->alloc);          buffer->buf = xrealloc(buffer->buf, buffer->alloc);
         goto restart;          goto restart;
           /* NOTREACHED */
 }  }
   
 /* Returns the number of bytes of data in the buffer. */  /* Returns the number of bytes of data in the buffer. */
Line 109 
Line 112 
 /* Gets data from the beginning of the buffer. */  /* Gets data from the beginning of the buffer. */
   
 void  void
 buffer_get(Buffer *buffer, char *buf, u_int len)  buffer_get(Buffer *buffer, void *buf, u_int len)
 {  {
         if (len > buffer->end - buffer->offset)          if (len > buffer->end - buffer->offset)
                 fatal("buffer_get: trying to get more bytes %d than in buffer %d",                  fatal("buffer_get: trying to get more bytes %d than in buffer %d",
Line 140 
Line 143 
   
 /* Returns a pointer to the first used byte in the buffer. */  /* Returns a pointer to the first used byte in the buffer. */
   
 char *  void *
 buffer_ptr(Buffer *buffer)  buffer_ptr(Buffer *buffer)
 {  {
         return buffer->buf + buffer->offset;          return buffer->buf + buffer->offset;
Line 152 
Line 155 
 buffer_dump(Buffer *buffer)  buffer_dump(Buffer *buffer)
 {  {
         int i;          int i;
         u_char *ucp = (u_char *) buffer->buf;          u_char *ucp = buffer->buf;
   
         for (i = buffer->offset; i < buffer->end; i++) {          for (i = buffer->offset; i < buffer->end; i++) {
                 fprintf(stderr, "%02x", ucp[i]);                  fprintf(stderr, "%02x", ucp[i]);

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.13.4.1