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

Web服务器

开发平台:

Unix_Linux

  1. /*
  2. ** phttpd.h
  3. **
  4. ** Copyright (c) 1994-1997 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 PHTTPD_H_INCLUDED
  20. #define PHTTPD_H_INCLUDED
  21. #include <thread.h>
  22. #include <stdarg.h>
  23. #include <time.h>
  24. #include <unistd.h>
  25. #include <sys/types.h>
  26. #include <sys/socket.h>
  27. #include <netinet/in.h>
  28. #include <sys/param.h>
  29. #include "phttpd/server.h"
  30. #include "phttpd/util.h"
  31. #include "phttpd/ident.h"
  32. #include "phttpd/dns.h"
  33. #include "phttpd/signals.h"
  34. #include "phttpd/strutils.h"
  35. #include "phttpd/fdstdio.h"
  36. #include "phttpd/process.h"
  37. #include "phttpd/hashtable.h"
  38. #include "phttpd/cache.h"
  39. #include "phttpd/fscache.h"
  40. #include "phttpd/urlcache.h"
  41. #include "phttpd/table.h"
  42. #include "phttpd/mime.h"
  43. #include "phttpd/url.h"
  44. #include "phttpd/html.h"
  45. #include "phttpd/auth.h"
  46. #include "phttpd/http.h"
  47. #include "phttpd/error.h"
  48. #include "phttpd/config.h"
  49. #include "phttpd/connection.h"
  50. #include "phttpd/modules.h"
  51. #include "phttpd/logger.h"
  52. #include "phttpd/safeio.h"
  53. #include "phttpd/readdir.h"
  54. #include "phttpd/hostcache.h"
  55. #include "phttpd/usercache.h"
  56. #include "phttpd/multi.h"
  57. #include "phttpd/globals.h"
  58. #include "phttpd/macros.h"
  59. #include "phttpd/autofail.h"
  60. #ifndef UI_THREADS
  61. #define fork1() fork()
  62. #define ctime_r(a,b,c) ctime_r(a,b)
  63. #endif
  64. extern char server_version[];
  65. #if 0
  66. struct httpinfo;
  67. extern char *server_home;
  68. extern uid_t  server_uid;
  69. extern gid_t  server_gid;
  70. extern char *modules_home;
  71. extern int  n_listen;
  72. extern int  concurrency;
  73. extern int  stack_size;
  74. extern int  max_fds;
  75. extern int  so_sndbuf;
  76. extern int  so_rcvbuf;
  77. extern hashtable_t *virtual_hosts_table;
  78. extern char *web_admin_name;
  79. extern char *web_admin_home;
  80. extern char *web_admin_email;
  81. extern char *default_file_handler;
  82. extern char *default_dir_handler;
  83. #endif
  84. extern int uidgid_get(const char *user,
  85.       const char *group,
  86.       uid_t *uid,
  87.       gid_t *gid,
  88.       struct passwd **pwp,
  89.       struct passwd *pwb,
  90.       char *pbuf,
  91.       int pbuflen);
  92. extern int phttpd_request(struct connectioninfo *cip);
  93. extern int strmatch(const char *string, const char *pattern);
  94. extern int atotm(const char *date_str, struct tm *date);
  95. #if 0
  96. extern char *get_hostname(struct addressinfo_s *aip);
  97. extern char *get_ident(struct addressinfo_s *aip);
  98. #endif
  99. #endif