Author: adrian.chadd
Date: Tue Apr 21 01:37:50 2009
New Revision: 13958

Added:
    branches/LUSCA_HEAD/libsqtlv/
Modified:
    branches/LUSCA_HEAD/Makefile.am
    branches/LUSCA_HEAD/configure.in
    branches/LUSCA_HEAD/src/Makefile.am
    branches/LUSCA_HEAD/src/defines.h
    branches/LUSCA_HEAD/src/mem.c
    branches/LUSCA_HEAD/src/protos.h
    branches/LUSCA_HEAD/src/squid.h
    branches/LUSCA_HEAD/src/store_client.c
    branches/LUSCA_HEAD/src/store_swapmeta.c
    branches/LUSCA_HEAD/src/store_swapout.c
    branches/LUSCA_HEAD/src/structs.h
    branches/LUSCA_HEAD/src/typedefs.h

Log:
Start migrating the tlv code out of src/ and into a separate library so
it can be reused elsewhere.



Modified: branches/LUSCA_HEAD/Makefile.am
==============================================================================
--- branches/LUSCA_HEAD/Makefile.am     (original)
+++ branches/LUSCA_HEAD/Makefile.am     Tue Apr 21 01:37:50 2009
@@ -4,8 +4,8 @@
  #

  AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects 1.5
-DIST_SUBDIRS   = lib libcore libmem libsqname libcb libiapp libstat libhttp  
libsqdns libsqident libsqinet libhelper libmime libsqdebug libstmem  
libasyncio snmplib scripts src icons errors contrib doc helpers tools app
-SUBDIRS                = lib libcore libmem libsqname libcb libiapp libstat 
libhttp  
libsqdns libsqident libsqinet libhelper libmime libsqdebug libstmem  
libasyncio @makesnmplib@ scripts src icons errors doc helpers tools app
+DIST_SUBDIRS   = lib libcore libmem libsqname libcb libiapp libstat libhttp  
libsqdns libsqident libsqinet libhelper libmime libsqdebug libstmem  
libasyncio libsqtlv snmplib scripts src icons errors contrib doc helpers  
tools app
+SUBDIRS                = lib libcore libmem libsqname libcb libiapp libstat 
libhttp  
libsqdns libsqident libsqinet libhelper libmime libsqdebug libstmem  
libasyncio libsqtlv @makesnmplib@ scripts src icons errors doc helpers  
tools app

  DISTCLEANFILES = include/stamp-h include/stamp-h[0-9]*
  DEFAULT_PINGER                = $(libexecdir)/`echo pinger |  
sed '$(transform);s/$$/$(EXEEXT)/'`

Modified: branches/LUSCA_HEAD/configure.in
==============================================================================
--- branches/LUSCA_HEAD/configure.in    (original)
+++ branches/LUSCA_HEAD/configure.in    Tue Apr 21 01:37:50 2009
@@ -3321,6 +3321,7 @@
        Makefile \
        app/Makefile \
        app/tcptest/Makefile \
+       libsqtlv/Makefile \
        libmime/Makefile \
        libasyncio/Makefile \
        libsqdns/Makefile \

Modified: branches/LUSCA_HEAD/src/Makefile.am
==============================================================================
--- branches/LUSCA_HEAD/src/Makefile.am (original)
+++ branches/LUSCA_HEAD/src/Makefile.am Tue Apr 21 01:37:50 2009
@@ -254,6 +254,7 @@
        -L../libsqinet \
        -L../libsqname \
        -L../libasyncio \
+       -L../libsqtlv \
        @XTRA_OBJS@ \
        @REPL_OBJS@ \
        @STORE_OBJS@ \
@@ -264,6 +265,7 @@
        @LIB_MALLOC@ \
        @SSLLIB@ \
        @LIB_EPOLL@ \
+       -lsqtlv \
        -lasyncio \
        -lstmem \
        -lsqdns \
@@ -316,7 +318,7 @@
  data_DATA = \
        mib.txt

-LDADD = -L../lib -L../libcore -L../libsqdebug -L../libmem -L../libsqname  
-L../libcb -L../libhelper -L../libmime -L../libstmem -L../libiapp  
-L../libhttp -L../libstat -L../libsqdns -L../libsqident -L../libsqinet  
-L../libasyncio -lasyncio -lsqinet -lsqdns -lsqdebug -lcore -lmem -lsqname  
-lcb -lsqident -lhelper -lmime -lstmem -liapp -lhttp -lstat -lmiscutil  
@XTRA_LIBS@
+LDADD = -L../lib -L../libcore -L../libsqdebug -L../libmem -L../libsqname  
-L../libcb -L../libhelper -L../libmime -L../libstmem -L../libiapp  
-L../libhttp -L../libstat -L../libsqdns -L../libsqident -L../libsqinet  
-L../libasyncio -L../libsqtlv -lsqtlv -lasyncio -lsqinet -lsqdns -lsqdebug  
-lcore -lmem -lsqname -lcb -lsqident -lhelper -lmime -lstmem -liapp -lhttp  
-lstat -lmiscutil @XTRA_LIBS@

  EXTRA_DIST = \
        cf_gen_defines \

Modified: branches/LUSCA_HEAD/src/defines.h
==============================================================================
--- branches/LUSCA_HEAD/src/defines.h   (original)
+++ branches/LUSCA_HEAD/src/defines.h   Tue Apr 21 01:37:50 2009
@@ -239,4 +239,6 @@

  #define       LOGFILE_SEQNO(n)        ( (n)->sequence_number )

+#define        storeSwapTLVFree        tlv_free
+
  #endif /* SQUID_DEFINES_H */

Modified: branches/LUSCA_HEAD/src/mem.c
==============================================================================
--- branches/LUSCA_HEAD/src/mem.c       (original)
+++ branches/LUSCA_HEAD/src/mem.c       Tue Apr 21 01:37:50 2009
@@ -41,6 +41,8 @@

  /* local routines */

+MemPool * pool_swap_log_data = NULL;
+
  static void
  memStringStats(StoreEntry * sentry)
  {
@@ -126,7 +128,9 @@
      requestInitMem();
      helperInitMem();
      clientdbInitMem();
-    storeSwapTLVInitMem();
+    /* XXX this belongs in main.c nowdays */
+    tlv_init();
+    pool_swap_log_data = memPoolCreate("storeSwapLogData",  
sizeof(storeSwapLogData));
      /* Those below require conversion */
      cachemgrRegister("mem",
        "Memory Utilization",

Modified: branches/LUSCA_HEAD/src/protos.h
==============================================================================
--- branches/LUSCA_HEAD/src/protos.h    (original)
+++ branches/LUSCA_HEAD/src/protos.h    Tue Apr 21 01:37:50 2009
@@ -728,11 +728,9 @@
  /*
   * store_swapmeta.c
   */
-extern void storeSwapTLVInitMem(void);
  extern char *storeSwapMetaPack(tlv * tlv_list, int *length);
  extern tlv *storeSwapMetaBuild(StoreEntry * e);
  extern tlv *storeSwapMetaUnpack(const char *buf, int *hdrlen);
-extern void storeSwapTLVFree(tlv * n);
  extern char * storeSwapMetaAssemble(StoreEntry *e, int *length);

  /*

Modified: branches/LUSCA_HEAD/src/squid.h
==============================================================================
--- branches/LUSCA_HEAD/src/squid.h     (original)
+++ branches/LUSCA_HEAD/src/squid.h     Tue Apr 21 01:37:50 2009
@@ -440,6 +440,8 @@

  #include "../libstmem/stmem.h"

+#include "../libsqtlv/tlv.h"
+
  #include "../libsqstore/store_key.h"
  #include "../libsqstore/store_mgr.h"


Modified: branches/LUSCA_HEAD/src/store_client.c
==============================================================================
--- branches/LUSCA_HEAD/src/store_client.c      (original)
+++ branches/LUSCA_HEAD/src/store_client.c      Tue Apr 21 01:37:50 2009
@@ -708,7 +708,7 @@
        }
      } while (0);

-    storeSwapTLVFree(tlv_list);
+    tlv_free(tlv_list);
      xfree(new_url);
      /* don't free new_store_url if its owned by the mem object now */
      if (mem->store_url != new_store_url)

Modified: branches/LUSCA_HEAD/src/store_swapmeta.c
==============================================================================
--- branches/LUSCA_HEAD/src/store_swapmeta.c    (original)
+++ branches/LUSCA_HEAD/src/store_swapmeta.c    Tue Apr 21 01:37:50 2009
@@ -35,40 +35,6 @@

  #include "squid.h"

-MemPool * pool_swap_tlv = NULL;
-MemPool * pool_swap_log_data = NULL;
-
-void
-storeSwapTLVInitMem(void)
-{
-    pool_swap_tlv = memPoolCreate("storeSwapTLV", sizeof(tlv));
-    /* XXX This doesn't strictly belong here! */
-    pool_swap_log_data = memPoolCreate("storeSwapLogData",  
sizeof(storeSwapLogData));
-}
-
-static tlv **
-storeSwapTLVAdd(int type, const void *ptr, size_t len, tlv ** tail)
-{
-    tlv *t = memPoolAlloc(pool_swap_tlv);
-    t->type = (char) type;
-    t->length = (int) len;
-    t->value = xmalloc(len);
-    xmemcpy(t->value, ptr, len);
-    *tail = t;
-    return &t->next;           /* return new tail pointer */
-}
-
-void
-storeSwapTLVFree(tlv * n)
-{
-    tlv *t;
-    while ((t = n) != NULL) {
-       n = t->next;
-       xfree(t->value);
-       memPoolFree(pool_swap_tlv, t);
-    }
-}
-
  /*
   * Build a TLV list for a StoreEntry
   */
@@ -84,21 +50,21 @@
      assert(e->swap_status == SWAPOUT_WRITING);
      url = storeUrl(e);
      debug(20, 3) ("storeSwapMetaBuild: %s\n", url);
-    T = storeSwapTLVAdd(STORE_META_KEY, e->hash.key,  
SQUID_MD5_DIGEST_LENGTH, T);
+    T = tlv_add(STORE_META_KEY, e->hash.key, SQUID_MD5_DIGEST_LENGTH, T);
  #if SIZEOF_SQUID_FILE_SZ == SIZEOF_SIZE_T
-    T = storeSwapTLVAdd(STORE_META_STD, &e->timestamp, STORE_HDR_METASIZE,  
T);
+    T = tlv_add(STORE_META_STD, &e->timestamp, STORE_HDR_METASIZE, T);
  #else
-    T = storeSwapTLVAdd(STORE_META_STD_LFS, &e->timestamp,  
STORE_HDR_METASIZE, T);
+    T = tlv_add(STORE_META_STD_LFS, &e->timestamp, STORE_HDR_METASIZE, T);
  #endif
-    T = storeSwapTLVAdd(STORE_META_URL, url, strlen(url) + 1, T);
+    T = tlv_add(STORE_META_URL, url, strlen(url) + 1, T);
      if (objsize > -1) {
-       T = storeSwapTLVAdd(STORE_META_OBJSIZE, &objsize, sizeof(objsize), T);
+       T = tlv_add(STORE_META_OBJSIZE, &objsize, sizeof(objsize), T);
      }
      vary = e->mem_obj->vary_headers;
      if (vary)
-       T = storeSwapTLVAdd(STORE_META_VARY_HEADERS, vary, strlen(vary) + 1, T);
+       T = tlv_add(STORE_META_VARY_HEADERS, vary, strlen(vary) + 1, T);
      if (e->mem_obj->store_url)
-       T = storeSwapTLVAdd(STORE_META_STOREURL, e->mem_obj->store_url,  
strlen(e->mem_obj->store_url) + 1, T);
+       T = tlv_add(STORE_META_STOREURL, e->mem_obj->store_url,  
strlen(e->mem_obj->store_url) + 1, T);
      return TLV;
  }

@@ -249,7 +215,7 @@
                type, length, buflen, (int) j);
            break;
        }
-       T = storeSwapTLVAdd(type, &buf[j], (size_t) length, T);
+       T = tlv_add(type, &buf[j], (size_t) length, T);
        j += length;
      }
      *hdr_len = buflen;

Modified: branches/LUSCA_HEAD/src/store_swapout.c
==============================================================================
--- branches/LUSCA_HEAD/src/store_swapout.c     (original)
+++ branches/LUSCA_HEAD/src/store_swapout.c     Tue Apr 21 01:37:50 2009
@@ -58,7 +58,7 @@
      e->swap_status = SWAPOUT_WRITING;
      tlv_list = storeSwapMetaBuild(e);
      buf = storeSwapMetaPack(tlv_list, &swap_hdr_sz);
-    storeSwapTLVFree(tlv_list);
+    tlv_free(tlv_list);
  #if 0
      /* Disabled for now - buggy?! */
      buf = storeSwapMetaAssemble(e, &swap_hdr_sz);

Modified: branches/LUSCA_HEAD/src/structs.h
==============================================================================
--- branches/LUSCA_HEAD/src/structs.h   (original)
+++ branches/LUSCA_HEAD/src/structs.h   Tue Apr 21 01:37:50 2009
@@ -1897,13 +1897,6 @@
      } swap;
  };

-struct _tlv {
-    char type;
-    int length;
-    void *value;
-    tlv *next;
-};
-
  /*
   * Do we need to have the dirn in here? I don't think so, since we already
   * know the dirn ..

Modified: branches/LUSCA_HEAD/src/typedefs.h
==============================================================================
--- branches/LUSCA_HEAD/src/typedefs.h  (original)
+++ branches/LUSCA_HEAD/src/typedefs.h  Tue Apr 21 01:37:50 2009
@@ -116,7 +116,6 @@
  typedef struct _refresh_cc refresh_cc;
  typedef struct _ErrorState ErrorState;
  typedef struct _StatCounters StatCounters;
-typedef struct _tlv tlv;
  typedef struct _storeSwapLogData storeSwapLogData;
  typedef struct _storeSwapLogDataOld storeSwapLogDataOld;
  typedef struct _storeSwapLogHeader storeSwapLogHeader;

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"lusca-commit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/lusca-commit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to