The unified diff between revisions [6676c716..] and [c6f8f7e6..] is displayed below. It can also be downloaded as a raw diff.
#
#
# patch "src/enums.h"
# from [d3225c7b17f9312bef8509d7dd1284df1f0fcf98]
# to [b48c01f14f67bf878e17c8fd8a3d1aac10f67ab9]
#
# patch "src/store_client.c"
# from [d961bf8e2ac9cf641164b0dd9c6b5d0cef3688f0]
# to [35cf0d9660b7ea121d8da18a53b6d958cf75dc3e]
#
# patch "src/store_swapmeta.c"
# from [7d767872403f2adbc507a0fc81661dd161046f53]
# to [369d3779b78fe2673c4b4bbc83c4b85ba758eeac]
#
============================================================
--- src/enums.h d3225c7b17f9312bef8509d7dd1284df1f0fcf98
+++ src/enums.h b48c01f14f67bf878e17c8fd8a3d1aac10f67ab9
@@ -629,6 +629,7 @@ enum {
STORE_META_VALID,
STORE_META_VARY_HEADERS, /* Stores Vary request headers */
STORE_META_STD_LFS, /* standard metadata in lfs format */
+ STORE_META_OBJSIZE, /* object size, if its known */
STORE_META_END
};
============================================================
--- src/store_client.c d961bf8e2ac9cf641164b0dd9c6b5d0cef3688f0
+++ src/store_client.c 35cf0d9660b7ea121d8da18a53b6d958cf75dc3e
@@ -449,6 +449,8 @@ storeClientReadHeader(void *data, const
break;
}
break;
+ case STORE_META_OBJSIZE:
+ break;
case STORE_META_STD:
case STORE_META_STD_LFS:
break;
============================================================
--- src/store_swapmeta.c 7d767872403f2adbc507a0fc81661dd161046f53
+++ src/store_swapmeta.c 369d3779b78fe2673c4b4bbc83c4b85ba758eeac
@@ -68,6 +68,8 @@ storeSwapMetaBuild(StoreEntry * e)
tlv **T = &TLV;
const char *url;
const char *vary;
+ const squid_off_t objsize = objectLen(e);
+
assert(e->mem_obj != NULL);
assert(e->swap_status == SWAPOUT_WRITING);
url = storeUrl(e);
@@ -79,6 +81,10 @@ storeSwapMetaBuild(StoreEntry * e)
T = storeSwapTLVAdd(STORE_META_STD_LFS, &e->timestamp, STORE_HDR_METASIZE, T);
#endif
T = storeSwapTLVAdd(STORE_META_URL, url, strlen(url) + 1, T);
+ /* XXX this should eventually take the large-file-support stuff into account */
+ if (objsize > -1) {
+ T = storeSwapTLVAdd(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);