Messages in this thread Patch in this message | | | From | Abhishek Kulkarni <> | Subject | [9P PATCH 2/2] net/9p: Fix crash due to bad mount parameters. | Date | Wed, 1 Jul 2009 12:50:54 -0600 |
| |
It is not safe to use match_int without checking the token type returned by match_token (especially when the token type returned is Opt_err and args is empty). Fix it.
Signed-off-by: Abhishek Kulkarni <adkulkar@umail.iu.edu> --- :100644 100644 c613ed08.. b884d98... M net/9p/trans_fd.c net/9p/trans_fd.c | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/net/9p/trans_fd.c b/net/9p/trans_fd.c index c613ed0..b884d98 100644 --- a/net/9p/trans_fd.c +++ b/net/9p/trans_fd.c @@ -731,12 +731,14 @@ static int parse_opts(char *params, struct p9_fd_opts *opts) if (!*p) continue; token = match_token(p, tokens, args); - r = match_int(&args[0], &option); - if (r < 0) { - P9_DPRINTK(P9_DEBUG_ERROR, - "integer field, but no integer?\n"); - ret = r; - continue; + if (token != Opt_err) { + r = match_int(&args[0], &option); + if (r < 0) { + P9_DPRINTK(P9_DEBUG_ERROR, + "integer field, but no integer?\n"); + ret = r; + continue; + } } switch (token) { case Opt_port: -- 1.6.3.3
| |