Author: glen                         Date: Fri Oct 16 12:59:58 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
- apply branch.diff

---- Files affected:
packages/varnish:
   varnish.spec (1.39 -> 1.40) , branch.diff (NONE -> 1.1)  (NEW), branch.sh 
(NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/varnish/varnish.spec
diff -u packages/varnish/varnish.spec:1.39 packages/varnish/varnish.spec:1.40
--- packages/varnish/varnish.spec:1.39  Mon Oct  5 14:43:49 2009
+++ packages/varnish/varnish.spec       Fri Oct 16 14:59:53 2009
@@ -5,7 +5,7 @@
 Summary(pl.UTF-8):     Varnish - wydajny akcelerator HTTP
 Name:          varnish
 Version:       2.0.4
-Release:       2
+Release:       2.1
 License:       BSD
 Group:         Networking/Daemons/HTTP
 Source0:       http://dl.sourceforge.net/varnish/%{name}-%{version}.tar.gz
@@ -17,6 +17,7 @@
 Source5:       %{name}ncsa.sysconfig
 Source6:       %{name}.logrotate
 Source7:       %{name}.conf
+Patch100:      branch.diff
 Patch0:                %{name}-build.patch
 URL:           http://www.varnish-cache.org/
 BuildRequires: autoconf
@@ -87,6 +88,7 @@
 
 %prep
 %setup -q
+%patch100 -p0
 %patch0 -p1
 
 %build
@@ -158,7 +160,7 @@
 
 %files
 %defattr(644,root,root,755)
-%doc LICENSE README ChangeLog
+%doc LICENSE README ChangeLog etc/*.vcl
 %dir %{_sysconfdir}/%{name}
 %config(noreplace) %verify(not md5 mtime size) 
%{_sysconfdir}/%{name}/default.vcl
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/varnish
@@ -198,6 +200,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.40  2009/10/16 12:59:53  glen
+- apply branch.diff
+
 Revision 1.39  2009/10/05 12:43:49  glen
 - -libs split; rel 2
 

================================================================
Index: packages/varnish/branch.diff
diff -u /dev/null packages/varnish/branch.diff:1.1
--- /dev/null   Fri Oct 16 14:59:58 2009
+++ packages/varnish/branch.diff        Fri Oct 16 14:59:52 2009
@@ -0,0 +1,4712 @@
+Index: include/vsb.h
+===================================================================
+--- include/vsb.h      (.../tags/varnish-2.0.4/varnish-cache)
++++ include/vsb.h      (.../branches/2.0/varnish-cache)
+@@ -77,7 +77,8 @@
+ int            vsb_len(struct vsb *);
+ int            vsb_done(const struct vsb *);
+ void           vsb_delete(struct vsb *);
+-void           vsb_quote(struct vsb *s, const char *p, int how);
++void           vsb_quote(struct vsb *s, const char *p, int len, int how);
++const char    *vsb_unquote(struct vsb *s, const char *p, int len, int how);
+ #ifdef __cplusplus
+ };
+ #endif
+Index: include/compat/execinfo.h
+===================================================================
+--- include/compat/execinfo.h  (.../tags/varnish-2.0.4/varnish-cache)
++++ include/compat/execinfo.h  (.../branches/2.0/varnish-cache)
+@@ -0,0 +1,44 @@
++/*
++ * Copyright (c) 2003 Maxim Sobolev <[email protected]>
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ *
++ * $Id$
++ */
++
++#ifndef COMPAT_EXECINFO_H_INCLUDED
++#define COMPAT_EXECINFO_H_INCLUDED
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++int     backtrace(void **, int);
++char ** backtrace_symbols(void *const *, int);
++void    backtrace_symbols_fd(void *const *, int, int);
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif /* COMPAT_EXECINFO_H_INCLUDED */
+Index: include/libvarnish.h
+===================================================================
+--- include/libvarnish.h       (.../tags/varnish-2.0.4/varnish-cache)
++++ include/libvarnish.h       (.../branches/2.0/varnish-cache)
+@@ -42,6 +42,8 @@
+ /* from libvarnish/argv.c */
+ void FreeArgv(char **argv);
+ char **ParseArgv(const char *s, int flag);
++char *BackSlashDecode(const char *s, const char *e);
++int BackSlash(const char *s, char *res);
+ #define ARGV_COMMENT  (1 << 0)
+ #define ARGV_COMMA    (1 << 1)
+ 
+@@ -65,6 +67,7 @@
+ int TCP_filter_http(int sock);
+ void TCP_blocking(int sock);
+ void TCP_nonblocking(int sock);
++void TCP_linger(int sock, int linger);
+ #ifdef SOL_SOCKET
+ void TCP_name(const struct sockaddr *addr, unsigned l, char *abuf,
+     unsigned alen, char *pbuf, unsigned plen);
+Index: include/vrt_obj.h
+===================================================================
+--- include/vrt_obj.h  (.../tags/varnish-2.0.4/varnish-cache)
++++ include/vrt_obj.h  (.../branches/2.0/varnish-cache)
+@@ -24,6 +24,8 @@
+ double VRT_r_req_grace(struct sess *);
+ void VRT_l_req_grace(struct sess *, double);
+ const char * VRT_r_req_xid(struct sess *);
++unsigned VRT_r_req_esi(struct sess *);
++void VRT_l_req_esi(struct sess *, unsigned);
+ const char * VRT_r_bereq_request(const struct sess *);
+ void VRT_l_bereq_request(const struct sess *, const char *, ...);
+ const char * VRT_r_bereq_url(const struct sess *);
+Index: include/shmlog_tags.h
+===================================================================
+--- include/shmlog_tags.h      (.../tags/varnish-2.0.4/varnish-cache)
++++ include/shmlog_tags.h      (.../branches/2.0/varnish-cache)
+@@ -101,3 +101,5 @@
+ SLTM(Hash)
+ 
+ SLTM(Backend_health)
++
++SLTM(FetchError)
+Index: include/vrt.h
+===================================================================
+--- include/vrt.h      (.../tags/varnish-2.0.4/varnish-cache)
++++ include/vrt.h      (.../branches/2.0/varnish-cache)
+@@ -54,6 +54,7 @@
+       double          interval;
+       unsigned        window;
+       unsigned        threshold;
++      unsigned        initial;
+ };
+ 
+ /*
+Index: include/stat_field.h
+===================================================================
+--- include/stat_field.h       (.../tags/varnish-2.0.4/varnish-cache)
++++ include/stat_field.h       (.../branches/2.0/varnish-cache)
+@@ -30,21 +30,33 @@
+  */
+ 
+ MAC_STAT(client_conn,         uint64_t, 'a', "Client connections accepted")
++MAC_STAT(client_drop,         uint64_t, 'a', "Connection dropped, no sess")
+ MAC_STAT(client_req,          uint64_t, 'a', "Client requests received")
+ 
+ MAC_STAT(cache_hit,           uint64_t, 'a', "Cache hits")
+ MAC_STAT(cache_hitpass,               uint64_t, 'a', "Cache hits for pass")
+ MAC_STAT(cache_miss,          uint64_t, 'a', "Cache misses")
+ 
+-MAC_STAT(backend_conn,                uint64_t, 'a', "Backend connections 
success")
+-MAC_STAT(backend_unhealthy,   uint64_t, 'a',
+-    "Backend connections not attempted")
+-MAC_STAT(backend_busy,                uint64_t, 'a', "Backend connections too 
many")
+-MAC_STAT(backend_fail,                uint64_t, 'a', "Backend connections 
failures")
+-MAC_STAT(backend_reuse,               uint64_t, 'a', "Backend connections 
reuses")
+-MAC_STAT(backend_recycle,     uint64_t, 'a', "Backend connections recycles")
+-MAC_STAT(backend_unused,      uint64_t, 'a', "Backend connections unused")
++MAC_STAT(backend_conn,                uint64_t, 'a', "Backend conn. success")
++MAC_STAT(backend_unhealthy,   uint64_t, 'a', "Backend conn. not attempted")
++MAC_STAT(backend_busy,                uint64_t, 'a', "Backend conn. too many")
++MAC_STAT(backend_fail,                uint64_t, 'a', "Backend conn. failures")
++MAC_STAT(backend_reuse,               uint64_t, 'a', "Backend conn. reuses")
++MAC_STAT(backend_toolate,     uint64_t, 'a', "Backend conn. was closed")
++MAC_STAT(backend_recycle,     uint64_t, 'a', "Backend conn. recycles")
++MAC_STAT(backend_unused,      uint64_t, 'a', "Backend conn. unused")
+ 
++
++MAC_STAT(fetch_head,          uint64_t, 'a', "Fetch head")
++MAC_STAT(fetch_length,                uint64_t, 'a', "Fetch with Length")
++MAC_STAT(fetch_chunked,               uint64_t, 'a', "Fetch chunked")
++MAC_STAT(fetch_eof,           uint64_t, 'a', "Fetch EOF")
++MAC_STAT(fetch_bad,           uint64_t, 'a', "Fetch had bad headers")
++MAC_STAT(fetch_close,         uint64_t, 'a', "Fetch wanted close")
++MAC_STAT(fetch_oldhttp,               uint64_t, 'a', "Fetch pre HTTP/1.1 
closed")
++MAC_STAT(fetch_zero,          uint64_t, 'a', "Fetch zero len")
++MAC_STAT(fetch_failed,                uint64_t, 'a', "Fetch failed")
++
+ MAC_STAT(n_srcaddr,           uint64_t, 'i', "N struct srcaddr")
+ MAC_STAT(n_srcaddr_act,               uint64_t, 'i', "N active struct 
srcaddr")
+ MAC_STAT(n_sess_mem,          uint64_t, 'i', "N struct sess_mem")
+Index: include/Makefile.am
+===================================================================
+--- include/Makefile.am        (.../tags/varnish-2.0.4/varnish-cache)
++++ include/Makefile.am        (.../branches/2.0/varnish-cache)
+@@ -14,6 +14,7 @@
+       cli_priv.h \
+       compat/asprintf.h \
+       compat/daemon.h \
++      compat/execinfo.h \
+       compat/setproctitle.h \
+       compat/srandomdev.h \
+       compat/strlcat.h \
+Index: configure.ac
+===================================================================
+--- configure.ac       (.../tags/varnish-2.0.4/varnish-cache)
++++ configure.ac       (.../branches/2.0/varnish-cache)
+@@ -81,6 +81,7 @@
+ AC_CHECK_HEADERS([sys/statvfs.h])
+ AC_CHECK_HEADERS([sys/vfs.h])
+ AC_CHECK_HEADERS([endian.h])
++AC_CHECK_HEADERS([execinfo.h])
+ AC_CHECK_HEADERS([netinet/in.h])
+ AC_CHECK_HEADERS([pthread_np.h])
+ AC_CHECK_HEADERS([stddef.h])
+@@ -102,6 +103,7 @@
+ AC_FUNC_VPRINTF
+ AC_CHECK_FUNCS([strerror])
+ AC_FUNC_STRERROR_R
++AC_CHECK_FUNCS([dladdr])
+ AC_CHECK_FUNCS([socket])
+ AC_CHECK_FUNCS([strptime])
+ AC_CHECK_FUNCS([fmtcheck])
+@@ -360,6 +362,15 @@
+ fi
+ AC_DEFINE_UNQUOTED([VCC_CC],"$VCC_CC",[C compiler command line for VCL code])
+ 
++# Define HTTP_HDR_MAX_VAL
++AC_ARG_WITH(max-header-fields,
++            AS_HELP_STRING([--with-max-header-fields=NUM],
++                           [How many header fields to support (default=32)]),
++            [],
++            [with_max_header_fields=32])
++
++AC_DEFINE_UNQUOTED(HTTP_HDR_MAX_VAL, $with_max_header_fields, [Define maximum 
number of header fields supported by varnish ])
++
+ # Use jemalloc on Linux
+ JEMALLOC_SUBDIR=
+ JEMALLOC_LDADD=
+Index: lib/libvarnish/argv.c
+===================================================================
+--- lib/libvarnish/argv.c      (.../tags/varnish-2.0.4/varnish-cache)
++++ lib/libvarnish/argv.c      (.../branches/2.0/varnish-cache)
+@@ -43,11 +43,12 @@
+ #include <ctype.h>
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <string.h>
+ #include <stdint.h>
+ 
+ #include "libvarnish.h"
+ 
+-static int
++int
+ BackSlash(const char *s, char *res)
+ {
+       int r;
+@@ -103,13 +104,16 @@
+       return (r);
+ }
+ 
+-static char *
++char *
+ BackSlashDecode(const char *s, const char *e)
+ {
+       const char *q;
+       char *p, *r;
+       int i;
+ 
++      if (e == NULL)
++              e = strchr(s, '\0');
++      assert(e != NULL);
+       p = calloc((e - s) + 1, 1);
+       if (p == NULL)
+               return (p);
+Index: lib/libvarnish/cli_common.c
+===================================================================
+--- lib/libvarnish/cli_common.c        (.../tags/varnish-2.0.4/varnish-cache)
++++ lib/libvarnish/cli_common.c        (.../branches/2.0/varnish-cache)
+@@ -73,7 +73,7 @@
+ cli_quote(struct cli *cli, const char *s)
+ {
+ 
+-      vsb_quote(cli->sb, s, 0);
++      vsb_quote(cli->sb, s, -1, 0);
+ }
+ 
+ void
+Index: lib/libvarnish/tcp.c
+===================================================================
+--- lib/libvarnish/tcp.c       (.../tags/varnish-2.0.4/varnish-cache)
++++ lib/libvarnish/tcp.c       (.../branches/2.0/varnish-cache)
+@@ -36,6 +36,10 @@
+ 
+ #include <netinet/in.h>
+ 
++#ifdef __linux
++#include <netinet/tcp.h>
++#endif
++
+ #include <errno.h>
+ #include <sys/ioctl.h>
+ #ifdef HAVE_SYS_FILIO_H
+@@ -113,6 +117,10 @@
+               printf("Acceptfilter(%d, httpready): %d %s\n",
+                   sock, i, strerror(errno));
+       return (i);
++#elif defined(__linux)
++      int defer = 1;
++      setsockopt(sock, SOL_TCP,TCP_DEFER_ACCEPT,(char *) &defer, sizeof(int));
++      return (0);
+ #else
+       (void)sock;
+       return (0);
+@@ -222,3 +230,17 @@
+       AZ(setsockopt(s, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof timeout));
+ #endif
+ }
++
++/*--------------------------------------------------------------------
++ * Set or reset SO_LINGER flag
++ */
++ 
++void
++TCP_linger(int sock, int linger)
++{
++      struct linger lin;
++
++      memset(&lin, 0, sizeof lin);
++      lin.l_onoff = linger;
++      AZ(setsockopt(sock, SOL_SOCKET, SO_LINGER, &lin, sizeof lin));
++}
+Index: lib/libvarnish/vsb.c
+===================================================================
+--- lib/libvarnish/vsb.c       (.../tags/varnish-2.0.4/varnish-cache)
++++ lib/libvarnish/vsb.c       (.../branches/2.0/varnish-cache)
+@@ -481,25 +481,27 @@
+  * Quote a string
+  */
+ void
+-vsb_quote(struct vsb *s, const char *p, int how)
++vsb_quote(struct vsb *s, const char *p, int len, int how)
+ {
+       const char *q;
+       int quote = 0;
+ 
+       (void)how;      /* For future enhancements */
++      if (len == -1)
++              len = strlen(p);
+ 
+-      for (q = p; *q != '\0'; q++) {
++      for (q = p; q < p + len; q++) {
+               if (!isgraph(*q) || *q == '"') {
+                       quote++;
+                       break;
+               }
+       }
+       if (!quote) {
+-              (void)vsb_cat(s, p);
++              (void)vsb_bcat(s, p, len);
+               return;
+       }
+       (void)vsb_putc(s, '"');
+-      for (q = p; *q != '\0'; q++) {
++      for (q = p; q < p + len; q++) {
+               switch (*q) {
+               case ' ':
+                       (void)vsb_putc(s, *q);
+@@ -522,9 +524,66 @@
+                       if (isgraph(*q))
+                               (void)vsb_putc(s, *q);
+                       else
+-                              (void)vsb_printf(s, "\\%o", *q);
++                              (void)vsb_printf(s, "\\%o", *q & 0xff);
+                       break;
+               }
+       }
+       (void)vsb_putc(s, '"');
+ }
++
++/*
++ * Unquote a string
++ */
++const char *
++vsb_unquote(struct vsb *s, const char *p, int len, int how)
++{
++      const char *q;
++      char *r;
++      unsigned long u;
++      char c;
++
++      (void)how;      /* For future enhancements */
++
++      if (len == -1)
++              len = strlen(p);
++
++      for (q = p; q < p + len; q++) {
++              if (*q != '\\') {
++                      (void)vsb_bcat(s, q, 1);
++                      continue;
++              }
++              if (++q >= p + len)
++                      return ("Incomplete '\\'-sequence at end of string");
++
++              switch(*q) {
++              case 'n':
++                      (void)vsb_bcat(s, "\n", 1);
++                      continue;
++              case 'r':
++                      (void)vsb_bcat(s, "\r", 1);
++                      continue;
++              case 't':
++                      (void)vsb_bcat(s, "\t", 1);
++                      continue;
++              case '0':
++              case '1':
++              case '2':
++              case '3':
++              case '4':
++              case '5':
++              case '6':
++              case '7':
++                      errno = 0;
++                      u = strtoul(q, &r, 8);
++                      if (errno != 0 || (u & ~0xff))
++                              return ("\\ooo sequence out of range");
++                      c = (char)u;
++                      (void)vsb_bcat(s, &c, 1);
++                      q = r - 1;
++                      continue;
++              default:
++                      (void)vsb_bcat(s, q, 1);
++              }
++      }
++      return (NULL);
++}
+Index: lib/libvarnishcompat/execinfo.c
+===================================================================
+--- lib/libvarnishcompat/execinfo.c    (.../tags/varnish-2.0.4/varnish-cache)
++++ lib/libvarnishcompat/execinfo.c    (.../branches/2.0/varnish-cache)
+@@ -0,0 +1,451 @@
++/*
++ * Copyright (c) 2003 Maxim Sobolev <[email protected]>
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ *
++ * $Id$
++ */
++
++#include "config.h"
++
++#include <sys/types.h>
++#include <sys/uio.h>
++#include <dlfcn.h>
++#include <math.h>
++#include <stddef.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <unistd.h>
++
++#include "execinfo.h"
++
++void *getreturnaddr(int);
++void *getframeaddr(int);
++
++#define D10(x) ceil(log10(((x) == 0) ? 2 : ((x) + 1)))
++
++inline static void *
++realloc_safe(void *ptr, size_t size)
++{
++    void *nptr;
++
++    nptr = realloc(ptr, size);
++    if (nptr == NULL)
++        free(ptr);
++    return nptr;
++}
++
++int
++backtrace(void **buffer, int size)
++{
++    int i;
++
++    for (i = 1; getframeaddr(i + 1) != NULL && i != size + 1; i++) {
++        buffer[i - 1] = getreturnaddr(i);
++        if (buffer[i - 1] == NULL)
++            break;
++    }
++
++    return i - 1;
++}
++
++char **
++backtrace_symbols(void *const *buffer, int size)
++{
++    size_t clen, alen;
++    int i;
++    char **rval;
++
++    clen = size * sizeof(char *);
++    rval = malloc(clen);
++    if (rval == NULL)
++        return NULL;
++    for (i = 0; i < size; i++) {
++
++#ifdef HAVE_DLADDR
++    {
++        Dl_info info;
++      int offset;
++
++        if (dladdr(buffer[i], &info) != 0) {
++            if (info.dli_sname == NULL)
++                info.dli_sname = "???";
++            if (info.dli_saddr == NULL)
++                info.dli_saddr = buffer[i];
++            offset = (const char*)buffer[i] - (const char*)info.dli_saddr;
++            /* "0x01234567 <function+offset> at filename" */
++            alen = 2 +                      /* "0x" */
++                   (sizeof(void *) * 2) +   /* "01234567" */
++                   2 +                      /* " <" */
++                   strlen(info.dli_sname) + /* "function" */
++                   1 +                      /* "+" */
++                   10 +                     /* "offset */
++                   5 +                      /* "> at " */
++                   strlen(info.dli_fname) + /* "filename" */
++                   1;                       /* "\0" */
++            rval = realloc_safe(rval, clen + alen);
++            if (rval == NULL)
++                return NULL;
++            snprintf((char *) rval + clen, alen, "%p <%s+%d> at %s",
++              buffer[i], info.dli_sname, offset, info.dli_fname);
++            rval[i] = (char *) clen;
++            clen += alen;
++          continue;
++        } 
++    }
++#endif
++      alen = 2 +                      /* "0x" */
++             (sizeof(void *) * 2) +   /* "01234567" */
++             1;                       /* "\0" */
++      rval = realloc_safe(rval, clen + alen);
++      if (rval == NULL)
++          return NULL;
++      snprintf((char *) rval + clen, alen, "%p", buffer[i]);
++        rval[i] = (char *) clen;
++        clen += alen;
++    }
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/varnish/varnish.spec?r1=1.39&r2=1.40&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to