From 9996c7d579c4d424497d45f4645bb30baac3d408 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Tue, 15 Jun 2010 15:16:37 +0200 Subject: Some fix in _once. --- ncr-sessions.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ncr-sessions.c b/ncr-sessions.c index 1edeb01..6ac8f0f 100644 --- a/ncr-sessions.c +++ b/ncr-sessions.c @@ -271,6 +271,9 @@ int ncr_session_init(struct ncr_lists* lists, void __user* arg) ret = 0; + session.ses = ns->desc; + copy_to_user( arg, &session, sizeof(session)); + fail: if (key) _ncr_key_item_put(key); if (ret < 0) @@ -478,6 +481,7 @@ fail: int ncr_session_once(struct ncr_lists* lists, void __user* arg) { struct __user ncr_session_once_op_st* op = arg; + struct ncr_session_once_op_st kop; int ret; ret = ncr_session_init(lists, &op->init); @@ -486,6 +490,10 @@ int ncr_session_once(struct ncr_lists* lists, void __user* arg) return ret; } + copy_from_user(&kop, arg, sizeof(kop)); + kop.op.ses = kop.init.ses; + copy_to_user(arg, &kop, sizeof(kop)); + ret = ncr_session_final(lists, &op->op); if (ret < 0) { err(); -- cgit