|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Index: include/vrt.h
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
===================================================================
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
--- include/vrt.h (revisjon 3169)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+++ include/vrt.h (revisjon 3171)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
@@ -154,6 +154,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
/* Simple stuff */
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
int VRT_strcmp(const char *s1, const char *s2);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+void VRT_memmove(void *dst, const void *src, unsigned len);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
void VRT_ESI(struct sess *sp);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
void VRT_Rollback(struct sess *sp);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Index: lib/libvcl/vcc_fixed_token.c
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
===================================================================
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
--- lib/libvcl/vcc_fixed_token.c (revisjon 3169)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+++ lib/libvcl/vcc_fixed_token.c (revisjon 3171)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
@@ -434,6 +434,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
vsb_cat(sb, "\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
vsb_cat(sb, "/* Simple stuff */\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
vsb_cat(sb, "int VRT_strcmp(const char *s1, const char *s2);\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ vsb_cat(sb, "void VRT_memmove(void *dst, const void *src, unsigned len);\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
vsb_cat(sb, "\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
vsb_cat(sb, "void VRT_ESI(struct sess *sp);\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
vsb_cat(sb, "void VRT_Rollback(struct sess *sp);\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Index: lib/libvcl/vcc_acl.c
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
===================================================================
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
--- lib/libvcl/vcc_acl.c (revisjon 3169)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+++ lib/libvcl/vcc_acl.c (revisjon 3171)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
@@ -328,23 +328,37 @@
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
int depth, l, m, i;
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
unsigned at[VRT_ACL_MAXADDR + 1];
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
const char *oc;
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ struct sockaddr sa;
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\nstatic int\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "match_acl_%s_%s(const struct sess *sp, const void *p)\n",
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
pfx, acln);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "{\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
- Fh(tl, 0, "\tunsigned fam;\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\tconst unsigned char *a;\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ assert(sizeof (unsigned char) == 1);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ assert(sizeof (unsigned short) == 2);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ assert(sizeof (unsigned int) == 4);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ if (sizeof sa.sa_family == 1)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\tunsigned char fam;\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ else if (sizeof sa.sa_family == 2)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\tunsigned short fam;\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ else if (sizeof sa.sa_family == 4)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\tunsigned int fam;\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ else
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ assert(0 == __LINE__);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\ta = p;\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
- Fh(tl, 0, "\tfam = a[%d];\n", offsetof(struct sockaddr, sa_family));
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\tVRT_memmove(&fam, a + %d, sizeof fam);\n",
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ offsetof(struct sockaddr, sa_family));
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\tif (fam == %d)\n", PF_INET);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\t\ta += %d;\n", offsetof(struct sockaddr_in, sin_addr));
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\telse if (fam == %d)\n", PF_INET6);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\t\ta += %d;\n", offsetof(struct sockaddr_in6, sin6_addr));
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
- Fh(tl, 0, "\telse\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\telse {\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\t\tVRT_acl_log(sp, \"NO_FAM %s\");\n", acln);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Fh(tl, 0, "\t\treturn(0);\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
- Fh(tl, 0, "\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ Fh(tl, 0, "\t}\n\n");
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
depth = -1;
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
oc = 0;
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
at[0] = 256;
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
Index: bin/varnishd/cache_vrt.c
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
===================================================================
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
--- bin/varnishd/cache_vrt.c (revisjon 3169)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+++ bin/varnishd/cache_vrt.c (revisjon 3171)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
@@ -726,3 +726,10 @@
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
return (strcmp(s1, s2));
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
}
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+void
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+VRT_memmove(void *dst, const void *src, unsigned len)
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+{
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+ (void)memmove(dst, src, len);
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+}
|
|
![](https://seccdn.libravatar.org/avatar/74cf518cfbdeb3adc75503c0d54362b2c30967b534ba18919ae6b1b1f6b0c101?s=16&d=retro) |
d728b8b |
+
|