#ifndef TRAFGEN_CONF #define TRAFGEN_CONF #include #include #include #define TYPE_INC 0 #define TYPE_DEC 1 enum csum { CSUM_IP, CSUM_UDP, CSUM_TCP, }; struct counter { int type; uint8_t min, max, inc, val; off_t off; }; struct randomizer { off_t off; }; struct csum16 { off_t off, from, to; enum csum which; }; struct packet { uint8_t *payload; size_t len; }; struct packet_dyn { struct counter *cnt; size_t clen; struct randomizer *rnd; size_t rlen; struct csum16 *csum; size_t slen; }; extern int compile_packets(char *file, int verbose, int cpu, bool invoke_cpp); extern void cleanup_packets(void); #endif /* TRAFGEN_CONF */ pan='2'>cgit logo index : net-next.git
net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@google.com>2016-11-13 20:35:52 -0500
committerTheodore Ts'o <tytso@mit.edu>2016-11-19 20:56:06 -0500
commit3c7018ebf8dbf14e7cd4f5dc648c51fc979f45bb (patch)
tree6d1f382a088cb398acb0bd9b3d50fe1d577038d4
parentbc33b0ca11e3df467777a4fa7639ba488c9d4911 (diff)
fscrypto: don't use on-stack buffer for filename encryption
With the new (in 4.9) option to use a virtually-mapped stack (CONFIG_VMAP_STACK), stack buffers cannot be used as input/output for the scatterlist crypto API because they may not be directly mappable to struct page. For short filenames, fname_encrypt() was encrypting a stack buffer holding the padded filename. Fix it by encrypting the filename in-place in the output buffer, thereby making the temporary buffer unnecessary. This bug could most easily be observed in a CONFIG_DEBUG_SG kernel because this allowed the BUG in sg_set_buf() to be triggered. Cc: stable@vger.kernel.org Signed-off-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>