]> sjero.net Git - wget/blobdiff - src/rbuf.c
[svn] Remove the "rbuf" buffering layer. Provide peeking primitives instead.
[wget] / src / rbuf.c
diff --git a/src/rbuf.c b/src/rbuf.c
deleted file mode 100644 (file)
index b50e0e2..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-/* Buffering read.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
-
-This file is part of GNU Wget.
-
-GNU Wget is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-GNU Wget is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with Wget; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-In addition, as a special exception, the Free Software Foundation
-gives permission to link the code of its release of Wget with the
-OpenSSL project's "OpenSSL" library (or with modified versions of it
-that use the same license as the "OpenSSL" library), and distribute
-the linked executables.  You must obey the GNU General Public License
-in all respects for all of the code used other than "OpenSSL".  If you
-modify this file, you may extend this exception to your version of the
-file, but you are not obligated to do so.  If you do not wish to do
-so, delete this exception statement from your version.  */
-
-/* This is a simple implementation of buffering IO-read functions.  */
-
-#include <config.h>
-
-#include <stdio.h>
-#ifdef HAVE_STRING_H
-# include <string.h>
-#else
-# include <strings.h>
-#endif
-
-#include "wget.h"
-#include "rbuf.h"
-#include "connect.h"
-
-void
-rbuf_initialize (struct rbuf *rbuf, int fd)
-{
-  rbuf->fd = fd;
-  rbuf->buffer_pos = rbuf->buffer;
-  rbuf->buffer_left = 0;
-}
-
-int
-rbuf_initialized_p (struct rbuf *rbuf)
-{
-  return rbuf->fd != -1;
-}
-
-void
-rbuf_uninitialize (struct rbuf *rbuf)
-{
-  rbuf->fd = -1;
-}
-
-int
-rbuf_read_bufferful (struct rbuf *rbuf)
-{
-  return fd_read (rbuf->fd, rbuf->buffer, sizeof (rbuf->buffer), -1);
-}
-
-/* Currently unused -- see RBUF_READCHAR.  */
-#if 0
-/* Function version of RBUF_READCHAR.  */
-int
-rbuf_readchar (struct rbuf *rbuf, char *store)
-{
-  return RBUF_READCHAR (rbuf, store);
-}
-#endif
-
-/* Like rbuf_readchar(), only don't move the buffer position.  */
-int
-rbuf_peek (struct rbuf *rbuf, char *store)
-{
-  if (!rbuf->buffer_left)
-    {
-      int res;
-      rbuf->buffer_pos = rbuf->buffer;
-      rbuf->buffer_left = 0;
-      res = fd_read (rbuf->fd, rbuf->buffer, sizeof (rbuf->buffer), -1);
-      if (res <= 0)
-       return res;
-      rbuf->buffer_left = res;
-    }
-  *store = *rbuf->buffer_pos;
-  return 1;
-}
-
-#define MIN(p,q) (((p) <= (q)) ? (p) : (q))
-
-/* Flush RBUF's buffer to WHERE.  Flush MAXSIZE bytes at most.
-   Returns the number of bytes actually copied.  If the buffer is
-   empty, 0 is returned.  */
-int
-rbuf_flush (struct rbuf *rbuf, char *where, int maxsize)
-{
-  if (!rbuf->buffer_left)
-    return 0;
-  else
-    {
-      int howmuch = MIN (rbuf->buffer_left, maxsize);
-
-      if (where)
-       memcpy (where, rbuf->buffer_pos, howmuch);
-      rbuf->buffer_left -= howmuch;
-      rbuf->buffer_pos += howmuch;
-      return howmuch;
-    }
-}
-
-/* Discard any cached data in RBUF.  */
-void
-rbuf_discard (struct rbuf *rbuf)
-{
-  rbuf->buffer_left = 0;
-  rbuf->buffer_pos = rbuf->buffer;
-}