struct iscsi_initiator_data


Initiator data structure. More…

#include <iscsi_initiator.h>

struct iscsi_initiator_data {
    // fields

    iscsi_initiator_type init_type;
    iscsi_initiator_control_t handler;
    int host_bus_adapter;
    int verbosity;
    int win32_service_restart;
    unsigned long retry_timeout;
    int retry_attempts;
    char script_path[ISCSI_MAX_CMD_SIZE];
    int n_targets;
    int n_connections;
    iscsi_target_data_t targets[ISCSI_MAX_TARGETS_NUMBER];
    pthread_mutex_t mutex;
    sem_t request_sem;
    bool request_thread_started;
    pthread_t request_thread;
    pthread_t timer_thread;
    iscsi_connection_req* request_queue_head;
    iscsi_connection_req* request_queue_tail;

Detailed Documentation

Initiator data structure. Contains general information about the Initiator and per target data.


iscsi_initiator_type init_type

Type of the Initiator

iscsi_initiator_control_t handler

Connection request handler

int host_bus_adapter

Number of the host bus adapter. Usually 0

int verbosity

Initiator verbosity level Win32 iSCSI Service Restart Requirement

unsigned long retry_timeout

A time slice to wait for device readiness (usecs)

int retry_attempts

Number of times to probe iSCSI device readiness

char script_path[ISCSI_MAX_CMD_SIZE]

Path to iSCSI config scripts

int n_targets

Number of configured targets

int n_connections

Total number of brought up connections

iscsi_target_data_t targets[ISCSI_MAX_TARGETS_NUMBER]

Per target data

pthread_mutex_t mutex

Structure mutex

sem_t request_sem

Pending request semaphore

iscsi_connection_req* request_queue_head

Request queue head

iscsi_connection_req* request_queue_tail

Request queue tail