aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2018-06-01 10:49:40 -0600
committerWolfEnders <grzwolf1@gmail.com>2018-08-11 14:19:50 +0200
commitdd7d41d1b2c95e22e732b3d1574d2fd0e84ee67f (patch)
tree43f92a247e37509c8c9b8bca7e1957ed57a04cc1
parentc2c2ab933f10ffcd4745f6dbfa9ebea99d06269a (diff)
downloadandroid_external_e2fsprogs-cm-11.0.tar.gz
android_external_e2fsprogs-cm-11.0.tar.bz2
android_external_e2fsprogs-cm-11.0.zip
Ignore quotes in safe_print().cm-11.0
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);
+ }
}
}