X-Git-Url: http://sjero.net/git/?a=blobdiff_plain;f=src%2Frbuf.h;h=b042637728c80b306997db59f26115e0ac5de9ce;hb=0716c335a0d38c09ade6f05be17bffa0d586b3da;hp=44e5bd0e7fb973ee157fcf8e198c890c40a10392;hpb=31d6616c483359af431f4c33c3c5b237cd8d4426;p=wget diff --git a/src/rbuf.h b/src/rbuf.h index 44e5bd0e..b0426377 100644 --- a/src/rbuf.h +++ b/src/rbuf.h @@ -1,21 +1,31 @@ /* Declarations for rbuf.c. Copyright (C) 1998 Free Software Foundation, Inc. -This file is part of Wget. +This file is part of GNU Wget. -This program is free software; you can redistribute it and/or modify +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. -This program is distributed in the hope that it will be useful, +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 this program; if not, write to the Free Software -Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +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. */ #ifndef RBUF_H #define RBUF_H @@ -42,14 +52,14 @@ struct rbuf result of historical implementation of header code. The macro should return the character or EOF, and in case of error store it to rbuf->err or something. */ + #define RBUF_READCHAR(rbuf, store) \ ((rbuf)->buffer_left \ ? (--(rbuf)->buffer_left, \ *((char *) (store)) = *(rbuf)->buffer_pos++, 1) \ : ((rbuf)->buffer_pos = (rbuf)->buffer, \ ((((rbuf)->internal_dont_touch_this \ - = iread ((rbuf)->fd, (rbuf)->buffer, \ - sizeof ((rbuf)->buffer))) <= 0) \ + = rbuf_read_bufferful (rbuf)) <= 0) \ ? (rbuf)->internal_dont_touch_this \ : ((rbuf)->buffer_left = (rbuf)->internal_dont_touch_this - 1, \ *((char *) (store)) = *(rbuf)->buffer_pos++, \ @@ -67,4 +77,7 @@ int rbuf_peek PARAMS ((struct rbuf *, char *)); int rbuf_flush PARAMS ((struct rbuf *, char *, int)); void rbuf_discard PARAMS ((struct rbuf *)); +/* Internal, but used by the macro. */ +int rbuf_read_bufferful PARAMS ((struct rbuf *)); + #endif /* RBUF_H */