1999-12-02 02:42:23 -05:00
|
|
|
/* Declarations for utils.c.
|
|
|
|
Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
|
|
|
|
|
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
|
|
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
|
|
(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
|
2001-05-27 15:35:15 -04:00
|
|
|
along with Wget; if not, write to the Free Software
|
2002-05-17 22:16:36 -04:00
|
|
|
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. */
|
1999-12-02 02:42:23 -05:00
|
|
|
|
|
|
|
#ifndef UTILS_H
|
|
|
|
#define UTILS_H
|
|
|
|
|
|
|
|
enum accd {
|
|
|
|
ALLABS = 1
|
|
|
|
};
|
|
|
|
|
|
|
|
/* A linked list of strings. The list is ordered alphabetically. */
|
|
|
|
typedef struct _slist
|
|
|
|
{
|
|
|
|
char *string;
|
|
|
|
struct _slist *next;
|
|
|
|
} slist;
|
|
|
|
|
2000-11-19 15:50:10 -05:00
|
|
|
struct hash_table;
|
|
|
|
|
|
|
|
struct file_memory {
|
|
|
|
char *content;
|
|
|
|
long length;
|
|
|
|
int mmap_p;
|
|
|
|
};
|
|
|
|
|
2001-04-24 19:09:45 -04:00
|
|
|
struct wget_timer;
|
|
|
|
|
1999-12-02 02:42:23 -05:00
|
|
|
char *time_str PARAMS ((time_t *));
|
2001-04-08 18:25:24 -04:00
|
|
|
char *datetime_str PARAMS ((time_t *));
|
|
|
|
|
2000-11-22 17:15:45 -05:00
|
|
|
#ifdef DEBUG_MALLOC
|
|
|
|
void print_malloc_debug_stats ();
|
|
|
|
#endif
|
|
|
|
|
2001-11-24 22:10:34 -05:00
|
|
|
char *xstrdup_lower PARAMS ((const char *));
|
2001-11-25 12:44:28 -05:00
|
|
|
int count_char PARAMS ((const char *, char));
|
|
|
|
|
1999-12-02 02:42:23 -05:00
|
|
|
char *strdupdelim PARAMS ((const char *, const char *));
|
|
|
|
char **sepstring PARAMS ((const char *));
|
|
|
|
int frontcmp PARAMS ((const char *, const char *));
|
|
|
|
char *pwd_cuserid PARAMS ((char *));
|
|
|
|
void fork_to_background PARAMS ((void));
|
|
|
|
|
|
|
|
void touch PARAMS ((const char *, time_t));
|
|
|
|
int remove_link PARAMS ((const char *));
|
|
|
|
int file_exists_p PARAMS ((const char *));
|
|
|
|
int file_non_directory_p PARAMS ((const char *));
|
2002-04-14 00:22:47 -04:00
|
|
|
long file_size PARAMS ((const char *));
|
1999-12-02 02:42:23 -05:00
|
|
|
int make_directory PARAMS ((const char *));
|
2003-09-16 17:47:49 -04:00
|
|
|
char *unique_name PARAMS ((const char *, int));
|
2001-11-21 19:24:28 -05:00
|
|
|
char *file_merge PARAMS ((const char *, const char *));
|
1999-12-02 02:42:23 -05:00
|
|
|
|
|
|
|
int acceptable PARAMS ((const char *));
|
|
|
|
int accdir PARAMS ((const char *s, enum accd));
|
|
|
|
char *suffix PARAMS ((const char *s));
|
2002-05-08 14:24:40 -04:00
|
|
|
int match_tail PARAMS ((const char *, const char *, int));
|
2003-10-07 19:53:31 -04:00
|
|
|
int has_wildcards_p PARAMS ((const char *));
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2002-04-12 14:53:39 -04:00
|
|
|
int has_html_suffix_p PARAMS ((const char *));
|
|
|
|
|
1999-12-02 02:42:23 -05:00
|
|
|
char *read_whole_line PARAMS ((FILE *));
|
2000-11-19 15:50:10 -05:00
|
|
|
struct file_memory *read_file PARAMS ((const char *));
|
|
|
|
void read_file_free PARAMS ((struct file_memory *));
|
1999-12-02 02:42:23 -05:00
|
|
|
|
|
|
|
void free_vec PARAMS ((char **));
|
|
|
|
char **merge_vecs PARAMS ((char **, char **));
|
2000-11-19 15:50:10 -05:00
|
|
|
slist *slist_append PARAMS ((slist *, const char *));
|
2000-11-20 21:06:36 -05:00
|
|
|
slist *slist_prepend PARAMS ((slist *, const char *));
|
|
|
|
slist *slist_nreverse PARAMS ((slist *));
|
2000-11-19 15:50:10 -05:00
|
|
|
int slist_contains PARAMS ((slist *, const char *));
|
|
|
|
void slist_free PARAMS ((slist *));
|
|
|
|
|
|
|
|
void string_set_add PARAMS ((struct hash_table *, const char *));
|
2001-05-12 16:06:41 -04:00
|
|
|
int string_set_contains PARAMS ((struct hash_table *, const char *));
|
2000-11-19 15:50:10 -05:00
|
|
|
void string_set_free PARAMS ((struct hash_table *));
|
|
|
|
void free_keys_and_values PARAMS ((struct hash_table *));
|
1999-12-02 02:42:23 -05:00
|
|
|
|
|
|
|
char *legible PARAMS ((long));
|
2003-10-11 09:57:11 -04:00
|
|
|
char *legible_large_int PARAMS ((LARGE_INT));
|
1999-12-02 02:42:23 -05:00
|
|
|
int numdigit PARAMS ((long));
|
2001-12-09 21:29:12 -05:00
|
|
|
char *number_to_string PARAMS ((char *, long));
|
1999-12-02 02:42:23 -05:00
|
|
|
|
2001-04-24 19:09:45 -04:00
|
|
|
struct wget_timer *wtimer_allocate PARAMS ((void));
|
|
|
|
struct wget_timer *wtimer_new PARAMS ((void));
|
|
|
|
void wtimer_delete PARAMS ((struct wget_timer *));
|
|
|
|
void wtimer_reset PARAMS ((struct wget_timer *));
|
2003-09-15 13:50:43 -04:00
|
|
|
double wtimer_elapsed PARAMS ((struct wget_timer *));
|
|
|
|
double wtimer_granularity PARAMS ((void));
|
2001-04-24 19:09:45 -04:00
|
|
|
|
2000-11-22 11:58:28 -05:00
|
|
|
char *html_quote_string PARAMS ((const char *));
|
|
|
|
|
2001-11-24 22:10:34 -05:00
|
|
|
int determine_screen_width PARAMS ((void));
|
2001-12-17 09:05:08 -05:00
|
|
|
int random_number PARAMS ((int));
|
2003-09-20 19:12:18 -04:00
|
|
|
double random_float PARAMS ((void));
|
2001-11-24 22:10:34 -05:00
|
|
|
|
2003-09-20 19:12:18 -04:00
|
|
|
int run_with_timeout PARAMS ((double, void (*) (void *), void *));
|
2002-04-13 18:18:28 -04:00
|
|
|
|
1999-12-02 02:42:23 -05:00
|
|
|
#endif /* UTILS_H */
|