summaryrefslogtreecommitdiff
path: root/sv.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2003-10-16 21:10:27 +0000
committerNicholas Clark <nick@ccl4.org>2003-10-16 21:10:27 +0000
commit4b5190b5321b9b9e2ec46674b256120d4fdab72a (patch)
tree1e544d93aaa7feaa02a7944af04463c96a8acd7e /sv.h
parent4e380990fe579cbec68c15cb8ee072f2d6644a71 (diff)
downloadperl-4b5190b5321b9b9e2ec46674b256120d4fdab72a.tar.gz
Plan C for foiling the algorithmic complexity attack
(based on Chip's plan A (binary compatibility with 5.8.0 and 5.8.1), Chip's plan B (do something new inside the hv functions) and introspective sort) Provides infrastructure for hashes to change their hash function if necessary, and code in hsplit to detect pathalogical data and instigate a random rehashing. Needs refinement. Let's see how much smoke it creates. p4raw-id: //depot/perl@21471
Diffstat (limited to 'sv.h')
-rw-r--r--sv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sv.h b/sv.h
index 5d2fab27bc..a9a57dfdda 100644
--- a/sv.h
+++ b/sv.h
@@ -213,6 +213,7 @@ perform the upgrade if necessary. See C<svtype>.
#define SVrepl_EVAL 0x40000000 /* Replacement part of s///e */
+#define SVphv_REHASH 0x10000000 /* HV is recalculating hash values */
#define SVphv_SHAREKEYS 0x20000000 /* keys live on shared string table */
#define SVphv_LAZYDEL 0x40000000 /* entry in xhv_eiter must be deleted */
#define SVphv_HASKFLAGS 0x80000000 /* keys have flag byte after hash */