#ifndef RECUR_H
#define RECUR_H
-void recursive_cleanup PARAMS ((void));
-uerr_t retrieve_tree PARAMS ((const char *));
-
-void register_download PARAMS ((const char *, const char *));
-void register_redirection PARAMS ((const char *, const char *));
-void register_html PARAMS ((const char *, const char *));
-void convert_all_links PARAMS ((void));
+/* For most options, 0 means no limits, but with -p in the picture,
+ that causes a problem on the maximum recursion depth variable. To
+ retain backwards compatibility we allow users to consider "0" to be
+ synonymous with "inf" for -l, but internally infinite recursion is
+ specified by -1 and 0 means to only retrieve the requisites of a
+ single document. */
+#define INFINITE_RECURSION -1
+
+struct urlpos;
+
+void recursive_cleanup (void);
+uerr_t retrieve_tree (const char *);
+
+/* These are really in html-url.c. */
+struct urlpos *get_urls_file (const char *);
+struct urlpos *get_urls_html (const char *, const char *, int *);
+void free_urlpos (struct urlpos *);
#endif /* RECUR_H */