url.h
上传用户:ladybrid91
上传日期:2007-01-04
资源大小:287k
文件大小:2k
源码类别:

Web服务器

开发平台:

Unix_Linux

  1. /*
  2. ** url.h
  3. **
  4. ** Copyright (c) 1994 Peter Eriksson <pen@signum.se>
  5. **
  6. ** This program is free software; you can redistribute it and/or modify
  7. ** it under the terms of the GNU General Public License as published by
  8. ** the Free Software Foundation; either version 2 of the License, or
  9. ** (at your option) any later version.
  10. **
  11. ** This program is distributed in the hope that it will be useful,
  12. ** but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. ** GNU General Public License for more details.
  15. ** You should have received a copy of the GNU General Public License
  16. ** along with this program; if not, write to the Free Software
  17. ** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  18. */
  19. #ifndef __URL_H__
  20. #define __URL_H__
  21. #include <sys/stat.h>
  22. extern struct table *url_handlers_table;
  23. extern struct table *url_redirects_table;
  24. extern struct table *url_predirects_table;
  25. extern struct table *url_rewrites_table;
  26. extern struct table *read_authenticate_table;
  27. extern struct table *write_authenticate_table;
  28. extern struct table *host_access_table;
  29. extern struct table *url_expand_table;
  30. extern struct table *content_language_table;
  31. extern char *url_expand(const char *path,
  32. char *realpath,
  33. int maxsize,
  34. struct stat *sp,
  35. uid_t *uid, gid_t *gid);
  36. extern char *url_getparent(const char *path, char *buf, int bufsize);
  37. extern const char *url_gethandler(char *url);
  38. extern char *url_match(struct table *tp,
  39.        const char *url,
  40.        char *result,
  41.        int size);
  42. extern char *url_getredirect(const char *url, char *out_url, int size);
  43. extern char *url_getpredirect(const char *url, char *out_url, int size);
  44. extern char *read_getauthenticate(const char *url, char *out_url, int size);
  45. extern char *write_getauthenticate(const char *url, char *out_url, int size);
  46. extern char *host_getaccess(const char *url, char *out_url, int size);
  47. extern char *url_getrewrite(const char *url, char *out_url, int url_size);
  48. extern char *url_quote(const char *from,
  49.        char *to,
  50.        int size,
  51.        char *quotemap,
  52.        int only_qm);
  53. extern void url_unquote(char *str, int plus_flag);
  54. extern void url_cleanup(char *str);
  55. extern char *make_sip_url();
  56. /* connectioninfo *cip, char *extname, int retsize ); */
  57. extern char *url_rewrite(const char *url,
  58.  const char *pattern,
  59.  char *buf,
  60.  int size);
  61. #endif