mirror of
https://github.com/Qortal/Brooklyn.git
synced 2025-02-15 19:55:53 +00:00
Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey! Ring the door. Take your seat moosey!
70 lines
1.4 KiB
C
70 lines
1.4 KiB
C
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
/*
|
|
* Copyright (C) 2018 Samsung Electronics Co., Ltd.
|
|
*/
|
|
|
|
#include <linux/slab.h>
|
|
#include <linux/mm.h>
|
|
|
|
#include "user_config.h"
|
|
#include "../transport_ipc.h"
|
|
|
|
struct ksmbd_user *ksmbd_login_user(const char *account)
|
|
{
|
|
struct ksmbd_login_response *resp;
|
|
struct ksmbd_user *user = NULL;
|
|
|
|
resp = ksmbd_ipc_login_request(account);
|
|
if (!resp)
|
|
return NULL;
|
|
|
|
if (!(resp->status & KSMBD_USER_FLAG_OK))
|
|
goto out;
|
|
|
|
user = ksmbd_alloc_user(resp);
|
|
out:
|
|
kvfree(resp);
|
|
return user;
|
|
}
|
|
|
|
struct ksmbd_user *ksmbd_alloc_user(struct ksmbd_login_response *resp)
|
|
{
|
|
struct ksmbd_user *user = NULL;
|
|
|
|
user = kmalloc(sizeof(struct ksmbd_user), GFP_KERNEL);
|
|
if (!user)
|
|
return NULL;
|
|
|
|
user->name = kstrdup(resp->account, GFP_KERNEL);
|
|
user->flags = resp->status;
|
|
user->gid = resp->gid;
|
|
user->uid = resp->uid;
|
|
user->passkey_sz = resp->hash_sz;
|
|
user->passkey = kmalloc(resp->hash_sz, GFP_KERNEL);
|
|
if (user->passkey)
|
|
memcpy(user->passkey, resp->hash, resp->hash_sz);
|
|
|
|
if (!user->name || !user->passkey) {
|
|
kfree(user->name);
|
|
kfree(user->passkey);
|
|
kfree(user);
|
|
user = NULL;
|
|
}
|
|
return user;
|
|
}
|
|
|
|
void ksmbd_free_user(struct ksmbd_user *user)
|
|
{
|
|
ksmbd_ipc_logout_request(user->name, user->flags);
|
|
kfree(user->name);
|
|
kfree(user->passkey);
|
|
kfree(user);
|
|
}
|
|
|
|
int ksmbd_anonymous_user(struct ksmbd_user *user)
|
|
{
|
|
if (user->name[0] == '\0')
|
|
return 1;
|
|
return 0;
|
|
}
|