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

Diff for /src/usr.bin/ssh/Attic/buffer.h between version 1.1 and 1.2

version 1.1, 1999/09/26 20:53:34 version 1.2, 1999/11/24 00:26:01
Line 1 
Line 1 
 /*  /*
    *
    * buffer.h
    *
    * Author: Tatu Ylonen <ylo@cs.hut.fi>
    *
    * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
    *                    All rights reserved
    *
    * Created: Sat Mar 18 04:12:25 1995 ylo
    *
    * Code for manipulating FIFO buffers.
    *
    */
   
 buffer.h  
   
 Author: Tatu Ylonen <ylo@cs.hut.fi>  
   
 Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland  
                    All rights reserved  
   
 Created: Sat Mar 18 04:12:25 1995 ylo  
   
 Code for manipulating FIFO buffers.  
   
 */  
   
 /* RCSID("$Id$"); */  /* RCSID("$Id$"); */
   
 #ifndef BUFFER_H  #ifndef BUFFER_H
 #define BUFFER_H  #define BUFFER_H
   
 typedef struct  typedef struct {
 {          char   *buf;            /* Buffer for data. */
   char *buf;                    /* Buffer for data. */          unsigned int alloc;     /* Number of bytes allocated for data. */
   unsigned int alloc;           /* Number of bytes allocated for data. */          unsigned int offset;    /* Offset of first byte containing data. */
   unsigned int offset;          /* Offset of first byte containing data. */          unsigned int end;       /* Offset of last byte containing data. */
   unsigned int end;             /* Offset of last byte containing data. */  }       Buffer;
 } Buffer;  
   
 /* Initializes the buffer structure. */  /* Initializes the buffer structure. */
 void buffer_init(Buffer *buffer);  void    buffer_init(Buffer * buffer);
   
 /* Frees any memory used for the buffer. */  /* Frees any memory used for the buffer. */
 void buffer_free(Buffer *buffer);  void    buffer_free(Buffer * buffer);
   
 /* Clears any data from the buffer, making it empty.  This does not actually  /* Clears any data from the buffer, making it empty.  This does not actually
    zero the memory. */     zero the memory. */
 void buffer_clear(Buffer *buffer);  void    buffer_clear(Buffer * buffer);
   
 /* Appends data to the buffer, expanding it if necessary. */  /* Appends data to the buffer, expanding it if necessary. */
 void buffer_append(Buffer *buffer, const char *data, unsigned int len);  void    buffer_append(Buffer * buffer, const char *data, unsigned int len);
   
 /* Appends space to the buffer, expanding the buffer if necessary.  /* Appends space to the buffer, expanding the buffer if necessary.
    This does not actually copy the data into the buffer, but instead     This does not actually copy the data into the buffer, but instead
    returns a pointer to the allocated region. */     returns a pointer to the allocated region. */
 void buffer_append_space(Buffer *buffer, char **datap, unsigned int len);  void    buffer_append_space(Buffer * buffer, char **datap, unsigned int len);
   
 /* Returns the number of bytes of data in the buffer. */  /* Returns the number of bytes of data in the buffer. */
 unsigned int buffer_len(Buffer *buffer);  unsigned int buffer_len(Buffer * buffer);
   
 /* Gets data from the beginning of the buffer. */  /* Gets data from the beginning of the buffer. */
 void buffer_get(Buffer *buffer, char *buf, unsigned int len);  void    buffer_get(Buffer * buffer, char *buf, unsigned int len);
   
 /* Consumes the given number of bytes from the beginning of the buffer. */  /* Consumes the given number of bytes from the beginning of the buffer. */
 void buffer_consume(Buffer *buffer, unsigned int bytes);  void    buffer_consume(Buffer * buffer, unsigned int bytes);
   
 /* Consumes the given number of bytes from the end of the buffer. */  /* Consumes the given number of bytes from the end of the buffer. */
 void buffer_consume_end(Buffer *buffer, unsigned int bytes);  void    buffer_consume_end(Buffer * buffer, unsigned int bytes);
   
 /* Returns a pointer to the first used byte in the buffer. */  /* Returns a pointer to the first used byte in the buffer. */
 char *buffer_ptr(Buffer *buffer);  char   *buffer_ptr(Buffer * buffer);
   
 /* Dumps the contents of the buffer to stderr in hex.  This intended for  /* Dumps the contents of the buffer to stderr in hex.  This intended for
    debugging purposes only. */     debugging purposes only. */
 void buffer_dump(Buffer *buffer);  void    buffer_dump(Buffer * buffer);
   
 #endif /* BUFFER_H */  #endif                          /* BUFFER_H */

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2