#include <linux/slab.h>
#include <linux/uio.h>
#include <target/iscsi/iscsi_target_core.h>
#include "iscsi_target_util.h"
#include "iscsi_target_parameters.h"
int iscsi_login_rx_data(
struct iscsit_conn *conn,
char *buf,
int length)
{ … }
int iscsi_login_tx_data(
struct iscsit_conn *conn,
char *pdu_buf,
char *text_buf,
int text_length)
{ … }
void iscsi_dump_conn_ops(struct iscsi_conn_ops *conn_ops)
{ … }
void iscsi_dump_sess_ops(struct iscsi_sess_ops *sess_ops)
{ … }
void iscsi_print_params(struct iscsi_param_list *param_list)
{ … }
static struct iscsi_param *iscsi_set_default_param(struct iscsi_param_list *param_list,
char *name, char *value, u8 phase, u8 scope, u8 sender,
u16 type_range, u8 use)
{ … }
int iscsi_create_default_params(struct iscsi_param_list **param_list_ptr)
{ … }
int iscsi_set_keys_to_negotiate(
struct iscsi_param_list *param_list,
bool iser)
{ … }
int iscsi_set_keys_irrelevant_for_discovery(
struct iscsi_param_list *param_list)
{ … }
int iscsi_copy_param_list(
struct iscsi_param_list **dst_param_list,
struct iscsi_param_list *src_param_list,
int leading)
{ … }
static void iscsi_release_extra_responses(struct iscsi_param_list *param_list)
{ … }
void iscsi_release_param_list(struct iscsi_param_list *param_list)
{ … }
struct iscsi_param *iscsi_find_param_from_key(
char *key,
struct iscsi_param_list *param_list)
{ … }
EXPORT_SYMBOL(…);
int iscsi_extract_key_value(char *textbuf, char **key, char **value)
{ … }
int iscsi_update_param_value(struct iscsi_param *param, char *value)
{ … }
static int iscsi_add_notunderstood_response(
char *key,
char *value,
struct iscsi_param_list *param_list)
{ … }
static int iscsi_check_for_auth_key(char *key)
{ … }
static void iscsi_check_proposer_for_optional_reply(struct iscsi_param *param,
bool keys_workaround)
{ … }
static int iscsi_check_boolean_value(struct iscsi_param *param, char *value)
{ … }
static int iscsi_check_numerical_value(struct iscsi_param *param, char *value_ptr)
{ … }
static int iscsi_check_string_or_list_value(struct iscsi_param *param, char *value)
{ … }
static char *iscsi_check_valuelist_for_support(
struct iscsi_param *param,
char *value)
{ … }
static int iscsi_check_acceptor_state(struct iscsi_param *param, char *value,
struct iscsit_conn *conn)
{ … }
static int iscsi_check_proposer_state(struct iscsi_param *param, char *value)
{ … }
static int iscsi_check_value(struct iscsi_param *param, char *value)
{ … }
static struct iscsi_param *__iscsi_check_key(
char *key,
int sender,
struct iscsi_param_list *param_list)
{ … }
static struct iscsi_param *iscsi_check_key(
char *key,
int phase,
int sender,
struct iscsi_param_list *param_list)
{ … }
static int iscsi_enforce_integrity_rules(
u8 phase,
struct iscsi_param_list *param_list)
{ … }
int iscsi_decode_text_input(
u8 phase,
u8 sender,
char *textbuf,
u32 length,
struct iscsit_conn *conn)
{ … }
int iscsi_encode_text_output(
u8 phase,
u8 sender,
char *textbuf,
u32 *length,
struct iscsi_param_list *param_list,
bool keys_workaround)
{ … }
int iscsi_check_negotiated_keys(struct iscsi_param_list *param_list)
{ … }
int iscsi_change_param_value(
char *keyvalue,
struct iscsi_param_list *param_list,
int check_key)
{ … }
void iscsi_set_connection_parameters(
struct iscsi_conn_ops *ops,
struct iscsi_param_list *param_list)
{ … }
void iscsi_set_session_parameters(
struct iscsi_sess_ops *ops,
struct iscsi_param_list *param_list,
int leading)
{ … }