[SSSD] [PATCH] SSH: Ensure that cmd_ctx->name will not be NULL.
Lukas Slebodnik
lslebodn at redhat.com
Tue Jul 30 12:42:19 UTC 2013
ehlo,
Ensure that cmd_ctx->name will not be NULL.
If cmd_ctx->name was not initialized by sss_parse_name
then copy of name will be used.
https://fedorahosted.org/sssd/ticket/1970
Coverity ID: 11647
Patch is attached.
LS
-------------- next part --------------
>From f288642f68a142fff0da97850823598d7023866d Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Tue, 30 Jul 2013 09:06:19 +0200
Subject: [PATCH] SSH: Ensure that cmd_ctx->name will not be NULL.
If cmd_ctx->name was not initialized by sss_parse_name
then copy of name will be used.
https://fedorahosted.org/sssd/ticket/1970
Coverity ID: 11647
---
src/responder/ssh/sshsrv_cmd.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/responder/ssh/sshsrv_cmd.c b/src/responder/ssh/sshsrv_cmd.c
index 76c3643506ffa1155a95750f96ee84305b1b317d..5d6699715e9dfd766e2c9c8a752b331b516d049c 100644
--- a/src/responder/ssh/sshsrv_cmd.c
+++ b/src/responder/ssh/sshsrv_cmd.c
@@ -752,6 +752,11 @@ ssh_cmd_parse_request(struct ssh_cmd_ctx *cmd_ctx)
name = cmd_ctx->name;
}
+ if (cmd_ctx->name == NULL) {
+ cmd_ctx->name = talloc_strdup(cmd_ctx, name);
+ if (!cmd_ctx->name) return ENOMEM;
+ }
+
if (cmd_ctx->is_user && cmd_ctx->domname == NULL) {
DEBUG(SSSDBG_TRACE_FUNC,
("Parsing name [%s][%s]\n", name, domain ? domain : "<ALL>"));
@@ -765,10 +770,7 @@ ssh_cmd_parse_request(struct ssh_cmd_ctx *cmd_ctx)
("Invalid name received [%s]\n", name));
return ENOENT;
}
- } else if (cmd_ctx->name == NULL && cmd_ctx->domname == NULL) {
- cmd_ctx->name = talloc_strdup(cmd_ctx, name);
- if (!cmd_ctx->name) return ENOMEM;
-
+ } else if (cmd_ctx->domname == NULL) {
if (domain != NULL) {
cmd_ctx->domname = talloc_strdup(cmd_ctx, domain);
if (!cmd_ctx->domname) return ENOMEM;
--
1.8.3.1
More information about the sssd-devel
mailing list