1999-12-02 02:42:23 -05:00
|
|
|
/* Declarations for retr.c.
|
2009-09-04 03:13:47 -04:00
|
|
|
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
2015-03-09 11:32:01 -04:00
|
|
|
2005, 2006, 2007, 2008, 2009, 2010, 2011, 2015 Free Software
|
|
|
|
Foundation, Inc.
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2001-05-27 15:35:15 -04:00
|
|
|
This file is part of GNU Wget.
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2001-05-27 15:35:15 -04:00
|
|
|
GNU Wget is free software; you can redistribute it and/or modify
|
1999-12-02 02:42:23 -05:00
|
|
|
it under the terms of the GNU General Public License as published by
|
2007-07-10 01:53:22 -04:00
|
|
|
the Free Software Foundation; either version 3 of the License, or
|
1999-12-02 02:42:23 -05:00
|
|
|
(at your option) any later version.
|
|
|
|
|
2001-05-27 15:35:15 -04:00
|
|
|
GNU Wget is distributed in the hope that it will be useful,
|
1999-12-02 02:42:23 -05:00
|
|
|
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
|
2007-07-10 01:53:22 -04:00
|
|
|
along with Wget. If not, see <http://www.gnu.org/licenses/>.
|
2002-05-17 22:16:36 -04:00
|
|
|
|
2007-11-28 03:05:33 -05:00
|
|
|
Additional permission under GNU GPL version 3 section 7
|
|
|
|
|
|
|
|
If you modify this program, or any covered work, by linking or
|
|
|
|
combining it with the OpenSSL project's OpenSSL library (or a
|
|
|
|
modified version of that library), containing parts covered by the
|
|
|
|
terms of the OpenSSL or SSLeay licenses, the Free Software Foundation
|
|
|
|
grants you additional permission to convey the resulting work.
|
|
|
|
Corresponding Source for a non-source form of such a combination
|
|
|
|
shall include the source code for the parts of OpenSSL used as well
|
|
|
|
as that of the covered work. */
|
1999-12-02 02:42:23 -05:00
|
|
|
|
|
|
|
#ifndef RETR_H
|
|
|
|
#define RETR_H
|
|
|
|
|
2009-02-01 13:03:51 -05:00
|
|
|
#include "url.h"
|
|
|
|
|
2014-11-22 02:50:38 -05:00
|
|
|
extern int numurls;
|
|
|
|
|
2005-06-27 14:19:22 -04:00
|
|
|
/* These global vars should be made static to retr.c and exported via
|
|
|
|
functions! */
|
2005-06-25 20:41:09 -04:00
|
|
|
extern SUM_SIZE_INT total_downloaded_bytes;
|
|
|
|
extern double total_download_time;
|
2005-06-27 14:19:22 -04:00
|
|
|
extern FILE *output_stream;
|
|
|
|
extern bool output_stream_regular;
|
2005-06-25 20:41:09 -04:00
|
|
|
|
2003-11-30 18:39:04 -05:00
|
|
|
/* Flags for fd_read_body. */
|
|
|
|
enum {
|
|
|
|
rb_read_exactly = 1,
|
2010-05-01 16:34:11 -04:00
|
|
|
rb_skip_startpos = 2,
|
|
|
|
|
|
|
|
/* Used by HTTP/HTTPS*/
|
|
|
|
rb_chunked_transfer_encoding = 4
|
2003-11-30 18:39:04 -05:00
|
|
|
};
|
|
|
|
|
2014-04-30 19:04:11 -04:00
|
|
|
int fd_read_body (const char *, int, FILE *, wgint, wgint, wgint *, wgint *, double *, int, FILE *);
|
2003-11-30 18:39:04 -05:00
|
|
|
|
2005-07-01 19:37:50 -04:00
|
|
|
typedef const char *(*hunk_terminator_t) (const char *, const char *, int);
|
2003-11-27 18:29:36 -05:00
|
|
|
|
2005-06-19 18:34:58 -04:00
|
|
|
char *fd_read_hunk (int, hunk_terminator_t, long, long);
|
|
|
|
char *fd_read_line (int);
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2009-06-25 04:14:11 -04:00
|
|
|
uerr_t retrieve_url (struct url *, const char *, char **, char **,
|
2009-08-28 02:08:58 -04:00
|
|
|
const char *, int *, bool, struct iri *, bool);
|
2005-06-22 15:38:10 -04:00
|
|
|
uerr_t retrieve_from_file (const char *, bool, int *);
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2005-06-25 20:41:09 -04:00
|
|
|
const char *retr_rate (wgint, double);
|
2005-06-19 18:34:58 -04:00
|
|
|
double calc_rate (wgint, double, int *);
|
|
|
|
void printwhat (int, int);
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2005-06-19 18:34:58 -04:00
|
|
|
void sleep_between_retrievals (int);
|
2000-12-05 19:24:40 -05:00
|
|
|
|
2005-06-19 18:34:58 -04:00
|
|
|
void rotate_backups (const char *);
|
2003-09-21 18:47:14 -04:00
|
|
|
|
2009-02-01 13:03:51 -05:00
|
|
|
bool url_uses_proxy (struct url *);
|
2006-11-21 17:18:12 -05:00
|
|
|
|
2009-09-05 14:41:19 -04:00
|
|
|
void set_local_file (const char **, const char *);
|
|
|
|
|
2010-03-04 16:09:31 -05:00
|
|
|
bool input_file_url (const char *);
|
|
|
|
|
1999-12-02 02:42:23 -05:00
|
|
|
#endif /* RETR_H */
|