-const char parsers_rcs[] = "$Id: parsers.c,v 1.77 2006/12/07 18:44:26 fabiankeil Exp $";
+const char parsers_rcs[] = "$Id: parsers.c,v 1.78 2006/12/26 17:19:20 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/parsers.c,v $
*
* Revisions :
* $Log: parsers.c,v $
+ * Revision 1.78 2006/12/26 17:19:20 fabiankeil
+ * Bringing back the "useless" localtime() call
+ * I removed in revision 1.67. On some platforms
+ * it's necessary to prevent time zone offsets.
+ *
* Revision 1.77 2006/12/07 18:44:26 fabiankeil
* Rebuild request URL in get_destination_from_headers()
* to make sure redirect{pcrs command} works as expected
* or buffer limit reached.
*
*********************************************************************/
-jb_err add_to_iob(struct client_state *csp, char *buf, int n)
+jb_err add_to_iob(struct client_state *csp, char *buf, size_t n)
{
struct iob *iob = csp->iob;
size_t used, offset, need, want;
if (n <= 0) return JB_ERR_OK;
- used = iob->eod - iob->buf;
- offset = iob->cur - iob->buf;
+ used = (size_t)(iob->eod - iob->buf);
+ offset = (size_t)(iob->cur - iob->buf);
need = used + n + 1;
/*
}
else
{
- rtime = difftime(now, last_modified);
+ rtime = (long int)difftime(now, last_modified);
if (rtime)
{
rtime = pick_from_range(rtime);
*********************************************************************/
int strclean(const char *string, const char *substring)
{
- int hits = 0, len = strlen(substring);
+ int hits = 0;
+ size_t len;
char *pos, *p;
+ len = strlen(substring);
+
while((pos = strstr(string, substring)) != NULL)
{
p = pos + len;
#ifndef PARSERS_H_INCLUDED
#define PARSERS_H_INCLUDED
-#define PARSERS_H_VERSION "$Id: parsers.h,v 1.31 2006/08/17 17:15:10 fabiankeil Exp $"
+#define PARSERS_H_VERSION "$Id: parsers.h,v 1.32 2006/12/06 19:14:23 fabiankeil Exp $"
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/parsers.h,v $
*
* Revisions :
* $Log: parsers.h,v $
+ * Revision 1.32 2006/12/06 19:14:23 fabiankeil
+ * Added prototype for get_destination_from_headers().
+ *
* Revision 1.31 2006/08/17 17:15:10 fabiankeil
* - Back to timegm() using GnuPG's replacement if necessary.
* Using mktime() and localtime() could add a on hour offset if
extern const add_header_func_ptr add_server_headers[];
extern int flush_socket(jb_socket fd, struct client_state *csp);
-extern jb_err add_to_iob(struct client_state *csp, char *buf, int n);
+extern jb_err add_to_iob(struct client_state *csp, char *buf, size_t n);
extern char *get_header(struct client_state *csp);
extern char *get_header_value(const struct list *header_list, const char *header_name);
extern char *sed(const struct parsers pats[], const add_header_func_ptr more_headers[], struct client_state *csp);