You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by rs...@hyperreal.org on 1998/04/06 12:49:50 UTC
cvs commit: apache-1.3/src/test/rename apapi.h apapi.h.mk rename.cf
rse 98/04/06 03:49:50
Modified: src/test/rename apapi.h apapi.h.mk rename.cf
Log:
Ok, here it comes the last part:
The completely generated apapi.h header file containing prototypes for all
public API functions (ap_xxx)
Revision Changes Path
1.3 +259 -1 apache-1.3/src/test/rename/apapi.h
Index: apapi.h
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/test/rename/apapi.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- apapi.h 1998/04/06 08:04:23 1.2
+++ apapi.h 1998/04/06 10:49:48 1.3
@@ -1 +1,259 @@
-NEED MORE WORK!
+/*
+** apapi.h -- Apache 1.3 API prototypes
+**
+** THIS IS A COMPLETE LIST OF PROTOTYPES
+** FOR ALL PUBLIC API FUNCTIONS
+*/
+
+#ifndef APAPI_H
+#define APAPI_H
+
+extern char ap_server_root[MAX_STRING_LEN];
+extern const char ap_day_snames[7][4];
+extern const char ap_month_snames[12][4];
+extern void ap_MD5Final(unsigned char digest[16], AP_MD5_CTX * context);
+extern void ap_MD5Init(AP_MD5_CTX * context);
+extern void ap_MD5Update(AP_MD5_CTX * context, const unsigned char *input, unsigned int inputLen);
+extern void ap_add_cgi_vars(request_rec *r);
+extern void ap_add_common_vars(request_rec *r);
+extern void ap_add_module(module *m);
+extern int ap_add_named_module(const char *name);
+extern int ap_allow_options (request_rec *);
+extern int ap_allow_overrides (request_rec *);
+extern array_header * ap_append_arrays(pool *, const array_header *, const array_header *);
+extern void ap_array_cat(array_header *dst, const array_header *src);
+extern char * ap_auth_name (request_rec *);
+extern char * ap_auth_type (request_rec *);
+extern void ap_basic_http_header(request_rec *r);
+extern int ap_bclose(BUFF *fb);
+extern BUFF * ap_bcreate(pool *p, int flags);
+extern int ap_bfilbuf(BUFF *fb);
+extern int ap_bfileno(BUFF *fb, int direction);
+extern int ap_bflsbuf(int c, BUFF *fb);
+extern int ap_bflush(BUFF *fb);
+extern int ap_bgetopt(BUFF *fb, int optname, void *optval);
+extern int ap_bgets(char *s, int n, BUFF *fb);
+extern void ap_bhalfduplex(BUFF *fb);
+extern void ap_block_alarms(void);
+extern int ap_blookc(char *buff, BUFF *fb);
+extern int ap_bnonblock(BUFF *fb, int direction);
+extern void ap_bonerror(BUFF *fb, void (*error) (BUFF *, int, void *), void *data);
+extern void ap_bpushfd(BUFF *fb, int fd_in, int fd_out);
+extern int ap_bputs(const char *x, BUFF *fb);
+extern int ap_bprintf(BUFF *fb, const char *fmt,...) __attribute__((format(printf,2,3)));
+extern int ap_bread(BUFF *fb, void *buf, int nbyte);
+extern int ap_bsetflag(BUFF *fb, int flag, int value);
+extern int ap_bsetopt(BUFF *fb, int optname, const void *optval);
+extern int ap_bskiplf(BUFF *fb);
+extern int ap_bvputs(BUFF *fb,...);
+extern int ap_bwrite(BUFF *fb, const void *buf, int nbyte);
+extern long ap_bytes_in_free_blocks(void);
+extern long ap_bytes_in_pool(pool *p);
+extern int ap_call_exec(request_rec *r, char *argv0, char **env, int shellcmd);
+extern int ap_can_exec(const struct stat *);
+extern int ap_cfg_closefile(configfile_t *fp);
+extern int ap_cfg_getc(configfile_t *cfp);
+extern int ap_cfg_getline(char *buf, size_t bufsize, configfile_t *cfp);
+extern void ap_chdir_file(const char *file);
+extern int ap_check_alarm(void);
+extern const char * ap_check_cmd_context(cmd_parms *cmd, unsigned forbidden);
+extern int ap_checkmask(const char *data, const char *mask);
+extern void ap_child_terminate(request_rec *r);
+extern void ap_cleanup_for_exec(void);
+extern void ap_clear_module_list(void);
+extern void ap_clear_pool(struct pool *);
+extern void ap_clear_table(table *);
+extern void ap_close_piped_log (piped_log *);
+extern char * ap_construct_server(pool *p, const char *hostname, unsigned port, const request_rec *r);
+extern char * ap_construct_url(pool *p, const char *uri, const request_rec *r);
+extern array_header * ap_copy_array(pool *p, const array_header *src);
+extern array_header * ap_copy_array_hdr(pool *p, const array_header *src);
+extern table * ap_copy_table(pool *p, const table *);
+extern int ap_count_dirs(const char *path);
+extern char ** ap_create_environment(pool *p, table *t);
+extern unsigned short ap_default_port_for_request(const request_rec *r);
+extern unsigned short ap_default_port_for_scheme(const char *scheme_str);
+extern char * ap_default_type (request_rec *);
+extern void ap_destroy_pool(pool *);
+extern void ap_destroy_sub_req(request_rec *r);
+extern int ap_discard_request_body(request_rec *r);
+extern char * ap_document_root (request_rec *);
+extern int ap_each_byterange(request_rec *r, long *offset, long *length);
+extern void ap_error_log2stderr (server_rec *);
+extern char * ap_escape_html(pool *p, const char *s);
+extern char * ap_escape_path_segment(pool *p, const char *s);
+extern char * ap_escape_shell_cmd(pool *p, const char *s);
+extern int ap_exists_scoreboard_image(void);
+extern int ap_find_last_token(pool *p, const char *line, const char *tok);
+extern module * ap_find_linked_module(const char *name);
+extern const char * ap_find_module_name(module *m);
+extern int ap_find_path_info(const char *uri, const char *path_info);
+extern pool * ap_find_pool(const void *ts);
+extern int ap_find_token(pool *p, const char *line, const char *tok);
+extern int ap_fnmatch(const char *, const char *, int);
+extern int ap_get_basic_auth_pw(request_rec *r, char **pw);
+extern long ap_get_client_block(request_rec *r, char *buffer, int bufsiz);
+extern struct tm * ap_get_gmtoff(int *tz);
+extern void * ap_get_module_config(void *conf_vector, module *m);
+extern const char * ap_get_remote_host(conn_rec *conn, void *dir_config, int type);
+extern const char * ap_get_remote_logname(request_rec *r);
+extern const char * ap_get_server_name(const request_rec *r);
+extern unsigned ap_get_server_port(const request_rec *r);
+extern char * ap_get_time(void);
+extern char * ap_get_token(pool *p, char **accept_line, int accept_white);
+extern void ap_getparents(char *name);
+extern char * ap_getword(pool *p, const char **line, char stop);
+extern char * ap_getword_conf(pool *p, const char **line);
+extern char * ap_getword_conf_nc(pool *p, char **line);
+extern char * ap_getword_nc(pool *p, char **line, char stop);
+extern char * ap_getword_nulls(pool *p, const char **line, char stop);
+extern char * ap_getword_nulls_nc(pool *p, char **line, char stop);
+extern char * ap_getword_white(pool *p, const char **line);
+extern char * ap_getword_white_nc(pool *p, char **line);
+extern char * ap_gm_timestr_822(pool *p, time_t t);
+extern gid_t ap_gname2id(const char *name);
+extern void ap_hard_timeout(char *, request_rec *);
+extern char * ap_ht_time(pool *p, time_t t, const char *fmt, int gmt);
+extern int ap_ind(const char *, char);
+extern int ap_index_of_response(int status);
+extern void ap_internal_redirect(const char *new_uri, request_rec *);
+extern void ap_internal_redirect_handler(const char *new_uri, request_rec *);
+extern int ap_is_directory(const char *name);
+extern int ap_is_fnmatch(const char *);
+extern int ap_is_initial_req(request_rec *r);
+extern int ap_is_matchexp(const char *str);
+extern int ap_is_url(const char *u);
+extern void ap_kill_cleanup(pool *p, void *data, void (*plain_cleanup) (void *));
+extern void ap_kill_cleanups_for_fd(pool *p, int fd);
+extern void ap_kill_cleanups_for_socket(pool *p, int sock);
+extern void ap_kill_timeout(request_rec *);
+extern void ap_log_assert(const char *szExp, const char *szFile, int nLine) __attribute__((noreturn));
+extern void ap_log_printf(const server_rec *s, const char *fmt, ...) __attribute__((format(printf,2,3)));
+extern void ap_log_reason(const char *reason, const char *fname, request_rec *r);
+extern void ap_log_unixerr(const char *routine, const char *file, const char *msg, server_rec *s);
+extern array_header * ap_make_array(pool *p, int nelts, int elt_size);
+extern char * ap_make_dirstr(pool *a, const char *s, int n);
+extern char * ap_make_dirstr_parent(pool *p, const char *s);
+extern char * ap_make_dirstr_prefix(char *d, const char *s, int n);
+extern char * ap_make_full_path(pool *a, const char *dir, const char *f);
+extern pool * ap_make_sub_pool(pool *);
+extern table * ap_make_table(pool *p, int nelts);
+extern int ap_matches_request_vhost(request_rec *r, const char *host, unsigned port);
+extern int ap_meets_conditions(request_rec *r);
+extern void ap_no2slash(char *name);
+extern void ap_note_auth_failure(request_rec *r);
+extern void ap_note_basic_auth_failure(request_rec *r);
+extern void ap_note_cleanups_for_fd(pool *, int);
+extern void ap_note_cleanups_for_file(pool *, FILE *);
+extern void ap_note_cleanups_for_socket(pool *, int);
+extern void ap_note_digest_auth_failure(request_rec *r);
+extern void ap_note_subprocess(pool *a, int pid, enum kill_conditions how);
+extern void ap_null_cleanup(void *data);
+extern piped_log * ap_open_piped_log (pool *p, const char *program);
+extern table * ap_overlay_tables(pool *p, const table *overlay, const table *base);
+extern void * ap_palloc(struct pool *, int nbytes);
+extern time_t ap_parseHTTPdate(const char *date);
+extern void ap_parse_uri(request_rec *r, const char *uri);
+extern int ap_parse_uri_components(pool *p, const char *uri, uri_components *uptr);
+extern int ap_parse_hostinfo_components(pool *p, const char *hostinfo, uri_components *uptr);
+extern void * ap_pcalloc(struct pool *, int nbytes);
+extern configfile_t * ap_pcfg_open_custom(pool *p, const char *descr, void *param, int(*getc_func)(void*), void *(*gets_func) (void *buf, size_t bufsiz, void *param), int(*close_func)(void*));
+extern configfile_t * ap_pcfg_openfile(pool *p, const char *name);
+extern void ap_pclosedir(pool *p, DIR * d);
+extern int ap_pclosef(struct pool *, int fd);
+extern int ap_pclosesocket(pool *a, int sock);
+extern struct hostent * ap_pduphostent(pool *p, struct hostent *hp);
+extern int ap_pfclose(struct pool *, FILE *);
+extern FILE * ap_pfdopen(struct pool *, int fd, const char *fmode);
+extern FILE * ap_pfopen(struct pool *, const char *name, const char *fmode);
+extern struct hostent * ap_pgethostbyname(pool *p, const char *hostname);
+extern int ap_pool_is_ancestor(pool *a, pool *b);
+extern void ap_pool_join(pool *p, pool *sub);
+extern DIR * ap_popendir(pool *p, const char *name);
+extern int ap_popenf(struct pool *, const char *name, int flg, int mode);
+extern regex_t * ap_pregcomp(pool *p, const char *pattern, int cflags);
+extern void ap_pregfree(pool *p, regex_t * reg);
+extern char * ap_pregsub(pool *p, const char *input, const char *source, size_t nmatch, regmatch_t pmatch[]);
+extern const char * ap_psignature(const char *prefix, request_rec *r);
+extern int ap_psocket(pool *p, int, int, int);
+extern char * ap_pstrcat(struct pool *,...);
+extern char * ap_pstrdup(struct pool *, const char *s);
+extern char * ap_pstrndup(struct pool *, const char *s, int n);
+extern char * ap_psprintf(struct pool *, const char *fmt, ...) __attribute__((format(printf,2,3)));
+extern char * ap_pvsprintf(struct pool *, const char *fmt, va_list);
+extern void * ap_push_array(array_header *);
+extern time_t ap_rationalize_mtime(request_rec *r, time_t mtime);
+extern void ap_register_cleanup(pool *p, void *data, void (*plain_cleanup) (void *), void (*child_cleanup) (void *));
+extern void ap_register_other_child(int pid, void (*maintenance) (int reason, void *data, int status), void *data, int write_fd);
+extern void ap_remove_module(module *m);
+extern array_header * ap_requires (request_rec *);
+extern void ap_reset_timeout(request_rec *);
+extern int ap_rflush(request_rec *r);
+extern int ap_rind(const char *, char);
+extern int ap_rprintf(request_rec *r, const char *fmt,...) __attribute__((format(printf,2,3)));
+extern int ap_rputc(int c, request_rec *r);
+extern int ap_rputs(const char *str, request_rec *r);
+extern void ap_run_cleanup(pool *p, void *data, void (*cleanup) (void *));
+extern int ap_run_sub_req(request_rec *r);
+extern int ap_rvputs(request_rec *r,...);
+extern int ap_rwrite(const void *buf, int nbyte, request_rec *r);
+extern int ap_satisfies (request_rec *r);
+extern int ap_scan_script_header_err(request_rec *r, FILE *f, char *buffer);
+extern int ap_scan_script_header_err_buff(request_rec *r, BUFF *f, char *buffer);
+extern long ap_send_fb(BUFF *f, request_rec *r);
+extern long ap_send_fb_length(BUFF *f, request_rec *r, long length);
+extern long ap_send_fd(FILE *f, request_rec *r);
+extern long ap_send_fd_length(FILE *f, request_rec *r, long length);
+extern int ap_send_header_field(request_rec *r, const char *fieldname, const char *fieldval);
+extern void ap_send_http_header(request_rec *l);
+extern size_t ap_send_mmap(void *mm, request_rec *r, size_t offset, size_t length);
+extern void ap_send_size(size_t size, request_rec *r);
+extern char * ap_server_root_relative(pool *p, char *fname);
+extern int ap_set_byterange(request_rec *r);
+extern int ap_set_content_length(request_rec *r, long length);
+extern void ap_set_etag(request_rec *r);
+extern const char * ap_set_file_slot(cmd_parms *, char *, char *);
+extern const char * ap_set_flag_slot(cmd_parms *, char *, int);
+extern int ap_set_keepalive(request_rec *r);
+extern void ap_set_last_modified(request_rec *r);
+extern void ap_set_module_config(void *conf_vector, module *m, void *val);
+extern const char * ap_set_string_slot(cmd_parms *, char *, char *);
+extern const char * ap_set_string_slot_lower(cmd_parms *, char *, char *);
+extern int ap_setup_client_block(request_rec *r, int read_policy);
+extern int ap_should_client_block(request_rec *r);
+extern void ap_soft_timeout(char *, request_rec *);
+extern int ap_some_auth_required(request_rec *r);
+extern int ap_spawn_child_err(pool *, int (*)(void *), void *, enum kill_conditions, FILE **pipe_in, FILE **pipe_out, FILE **pipe_err);
+extern int ap_spawn_child_err_buff(pool *, int (*)(void *), void *, enum kill_conditions, BUFF **pipe_in, BUFF **pipe_out, BUFF **pipe_err);
+extern const char * ap_srm_command_loop(cmd_parms *parms, void *config);
+extern void ap_str_tolower(char *);
+extern int ap_strcasecmp_match(const char *str, const char *exp);
+extern int ap_strcmp_match(const char *str, const char *exp);
+extern request_rec * ap_sub_req_lookup_file(const char *new_file, const request_rec *r);
+extern request_rec * ap_sub_req_lookup_uri(const char *new_file, const request_rec *r);
+extern void ap_sync_scoreboard_image(void);
+extern void ap_table_add(table *, const char *name, const char *val);
+extern void ap_table_addn(table *, const char *name, const char *val);
+extern void ap_table_do(int (*comp) (void *, const char *, const char *), void *rec, const table *t,...);
+extern char * ap_table_get(const table *, const char *);
+extern void ap_table_merge(table *, const char *name, const char *more_val);
+extern void ap_table_mergen(table *, const char *name, const char *more_val);
+extern void ap_table_set(table *, const char *name, const char *val);
+extern void ap_table_setn(table *, const char *name, const char *val);
+extern void ap_table_unset(table *, const char *key);
+extern time_t ap_tm2sec(const struct tm *t);
+extern uid_t ap_uname2id(const char *name);
+extern void ap_unblock_alarms(void);
+extern int ap_unescape_url(char *url);
+extern char * ap_unparse_uri_components(pool *p, const uri_components *uptr, unsigned flags);
+extern void ap_unregister_other_child(void *data);
+extern time_t ap_update_mtime(request_rec *r, time_t dependency_mtime);
+extern char * ap_uudecode(pool *, const char *);
+extern int ap_vbprintf(BUFF *fb, const char *fmt, va_list vlist);
+extern const char * ap_get_server_built(void);
+extern const char * ap_get_server_version(void);
+extern void ap_log_error(const char *file, int line, int level, const server_rec *s, const char *fmt, ...) __attribute__((format(printf,5,6)));
+extern void ap_log_error_old(const char *err, server_rec *s);
+extern char * ap_escape_path(pool *p, const char *path, int partial);
+
+#endif /* APAPI_H */
1.3 +30 -12 apache-1.3/src/test/rename/apapi.h.mk
Index: apapi.h.mk
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/test/rename/apapi.h.mk,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- apapi.h.mk 1998/04/06 08:04:23 1.2
+++ apapi.h.mk 1998/04/06 10:49:49 1.3
@@ -14,11 +14,31 @@
my ($func) = @_;
$rc = join('', `lid -f $id --key=token --result=grep $func`);
- if (($r, $f) = ($rc =~ m|\.c:\d+:\s*API_EXPORT\((.+?)\)(.+?\))|s)) {
- $pt = "$r$f";
- $pt =~ s|\n.+?:\d+:||sg;
- return "extern $1$2;";
- }
+ if ( $rc =~ m|^(.+?\.h):\d+:\s*API_EXPORT(?:_NONSTD)?\(.+?\)\s*$func\s*\(|m
+ or $rc =~ m|^(.+?\.h):\d+:\s*(?:extern\s*)?API_VAR_EXPORT\s*.+?$func.+?;|m) {
+ $file = $1;
+ open(FP, "<$file") || die;
+ $contents = join('', <FP>);
+ close(FP);
+ if (($r, $f) = ($contents =~ m|\n\s*API_EXPORT(?:_NONSTD)?\(([^)]+)\)\s+($func\s*\(.+?\);)|s)) {
+ $r =~ s|\s*\n\s*| |sg;
+ $r =~ s|\s+| |sg;
+ $r =~ s|extern\s+||g;
+ $f =~ s|\s*\n\s*| |sg;
+ $f =~ s|\s+| |sg;
+ $pt = sprintf("%-20s %s", $r, $f);
+ return $pt;
+ }
+ if (($r, $f) = ($contents =~ m|\n\s*(?:extern\s*)?API_VAR_EXPORT\s*([^;]*?)($func[^;]*;)|s)) {
+ $r =~ s|\s*\n\s*| |sg;
+ $r =~ s|\s+| |sg;
+ $r =~ s|extern\s+||g;
+ $f =~ s|\s*\n\s*| |sg;
+ $f =~ s|\s+| |sg;
+ $pt = sprintf("%-20s %s", $r, $f);
+ return $pt;
+ }
+ }
return '';
}
@@ -26,9 +46,10 @@
open(HDR, ">$header") || die;
print HDR <<'EOT';
/*
-** apapi.h -- Apache API prototypes
+** apapi.h -- Apache 1.3 API prototypes
**
-** THIS IS NOT COMPLETE BECAUSE IT NEEDS MANUAL FIXUP!
+** THIS IS A COMPLETE LIST OF PROTOTYPES
+** FOR ALL PUBLIC API FUNCTIONS
*/
#ifndef APAPI_H
@@ -41,16 +62,13 @@
if (($s1, $old, $s2, $new, $s3) = ($l =~ m|^(\s*)(\S+)(\s+)(\S+)(\s*)$|)) {
if ($new =~ m|^API_|) {
$new =~ s|^API_|ap_|;
+ $pt = &func_prototype($new);
if ($pt eq '') {
print STDERR "Sorry, prototype for `$new' cannot be determined automatically\n";
print HDR "/* prototype for `$new' cannot be automatically determined */\n";
}
- elsif ($pt eq 'extern ;') {
- print STDERR "Sorry, prototype for `$new' cannot be determined automatically\n";
- print HDR "/* prototype for `$new' cannot be automatically determined */\n";
- }
else {
- print HDR "$pt\n";
+ print HDR "extern $pt\n";
}
}
}
1.3 +4 -2 apache-1.3/src/test/rename/rename.cf
Index: rename.cf
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/test/rename/rename.cf,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- rename.cf 1998/04/06 08:04:24 1.2
+++ rename.cf 1998/04/06 10:49:49 1.3
@@ -175,7 +175,7 @@
core_reorder_directories APX_core_reorder_directories
count_dirs API_count_dirs
create_environment API_create_environment
-create_per_dir_config API_create_per_dir_config
+create_per_dir_config APX_create_per_dir_config
create_request_config APX_create_request_config
default_port_for_request API_default_port_for_request
default_port_for_scheme API_default_port_for_scheme
@@ -448,5 +448,7 @@
aplog_error API_log_error
log_error API_log_error_old
os_escape_path API_escape_path
-os_is_path_absolute API_is_path_absolute
+
+# specials: needs tag in source to become API_!
+os_is_path_absolute APX_is_path_absolute