Hi, dmsetup tries to suppress encryption key of crypt target in the table by filling '0' in params buffer. However, the code assumes the case for showing table only and will fill '0' beyond the params buffer when it's showing status, where the params is "". The patch fixes it. The suppression is not necessary for showing status as no encryption key is included in status line. Thanks, -- Jun'ichi Nomura, NEC Corporation of America
dmsetup tries to suppress encryption key of crypt target. However, the code overruns the params buffer if the command is showing 'status', in that case params is "". --- dmsetup/dmsetup.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) Index: device-mapper.work/dmsetup/dmsetup.c =================================================================== --- device-mapper.work.orig/dmsetup/dmsetup.c +++ device-mapper.work/dmsetup/dmsetup.c @@ -964,12 +964,14 @@ static int _status(int argc, char **argv if (target_type) { /* Suppress encryption key */ - if (!_switches[SHOWKEYS_ARG] && + if (cmd == DM_DEVICE_TABLE && + !_switches[SHOWKEYS_ARG] && !strcmp(target_type, "crypt")) { c = params; while (*c && *c != ' ') c++; - c++; + if (*c) + c++; while (*c && *c != ' ') *c++ = '0'; }
-- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel