linux/drivers/target/iscsi/iscsi_target_auth.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
 * This file houses the main functions for the iSCSI CHAP support
 *
 * (c) Copyright 2007-2013 Datera, Inc.
 *
 * Author: Nicholas A. Bellinger <[email protected]>
 *
 ******************************************************************************/

#include <crypto/hash.h>
#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/err.h>
#include <linux/random.h>
#include <linux/scatterlist.h>
#include <target/iscsi/iscsi_target_core.h>
#include "iscsi_target_nego.h"
#include "iscsi_target_auth.h"

static char *chap_get_digest_name(const int digest_type)
{}

static int chap_gen_challenge(
	struct iscsit_conn *conn,
	int caller,
	char *c_str,
	unsigned int *c_len)
{}

static int chap_test_algorithm(const char *name)
{}

static int chap_check_algorithm(const char *a_str)
{}

static void chap_close(struct iscsit_conn *conn)
{}

static struct iscsi_chap *chap_server_open(
	struct iscsit_conn *conn,
	struct iscsi_node_auth *auth,
	const char *a_str,
	char *aic_str,
	unsigned int *aic_len)
{}

static const char base64_lookup_table[] =;

static int chap_base64_decode(u8 *dst, const char *src, size_t len)
{}

static int chap_server_compute_hash(
	struct iscsit_conn *conn,
	struct iscsi_node_auth *auth,
	char *nr_in_ptr,
	char *nr_out_ptr,
	unsigned int *nr_out_len)
{}

u32 chap_main_loop(
	struct iscsit_conn *conn,
	struct iscsi_node_auth *auth,
	char *in_text,
	char *out_text,
	int *in_len,
	int *out_len)
{}