aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2018-06-01 10:49:40 -0600
committerTim Schumacher <timschumi@gmx.de>2018-08-08 20:54:52 +0200
commit8cf46bbe813a5a4ab41ac6cdb2f653a66d99098b (patch)
treec48045581c5a77a0ddeeeaf22ad77944782f0abc
parentd377698f96e3aa8cedaef5fd10c15de2bc614a7b (diff)
downloadandroid_external_e2fsprogs-cm-13.0.tar.gz
android_external_e2fsprogs-cm-13.0.tar.bz2
android_external_e2fsprogs-cm-13.0.zip
If the value being printed has embedded quotes ("), then printing those quotes could confuse other tools when parsing the value. This is the simplest CL to fix the security issue, and we can circle back to think about more robust escaping in a future CL. Bug: 80436257 Test: manual Change-Id: Ica17f2c5701573bceafe34f20110d230a3925483 (cherry picked from commit efe90c297a8df591c051fdbfacb92b5283390bba)
-rw-r--r--misc/blkid.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/misc/blkid.c b/misc/blkid.c
index 388abad0..248cacf6 100644
--- a/misc/blkid.c
+++ b/misc/blkid.c
@@ -86,7 +86,9 @@ static void safe_print(const char *cp, int len)
fputc('^', stdout);
ch ^= 0x40; /* ^@, ^A, ^B; ^? for DEL */
}
- fputc(ch, stdout);
+ if (ch != '"') {
+ fputc(ch, stdout);
+ }
}
}