?? iscsi_client.h
字號:
/* * $Id: iscsi_client.h,v 1.5 2001/04/21 04:07:01 mbrown Exp $ * * iscsi_client.h - exports definitions in iscsi_client.c * Copyright (C) 2001 Michael F. Brown (mbrown@cs.uml.edu) * * Changes : * * $Log: iscsi_client.h,v $ * Revision 1.5 2001/04/21 04:07:01 mbrown * more bug fixing, mount readonly works, use the new DISK file, it * contains a valid ext2 partition * * Revision 1.4 2001/04/11 20:09:35 mbrown * IT WORKS!!!!!! previous bug was a missing proc_name entry * * Revision 1.3 2001/04/03 09:44:58 mbrown * iscsi.o and iscsi_client.o now successfully compile. * * Revision 1.2 2001/03/12 10:49:31 mbrown * iscsi_client is now basically fully implemented minus proper * /proc communication and compilation fixes. This is going * to be put aside for now. * * Revision 1.1 2001/03/04 10:24:43 mbrown * initial revision. Doesn't compile but source here might be * useful for Mike and Josh. * * * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2, or (at your option) any * later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * */#ifndef _ISCSI_CLIENT_H#define _ISCSI_CLIENT_H#if !defined(LINUX_VERSION_CODE)#include <linux/version.h>#endif#ifndef LinuxVersionCode#define LinuxVersionCode(v, p, s) (((v)<<16)+((p)<<8)+(s))#endif#include <linux/types.h>#include <linux/kdev_t.h>#include "scsi.h"#include "hosts.h"#define ISCSI_CLIENT_SCSI_ID 7/*#define ISCSI_CLIENT_SG_TABLE_SIZE SG_ALL*/#define ISCSI_CLIENT_SG_TABLE_SIZE SG_NONEint iscsi_client_proc_info(char *, char **, off_t, int, int, int);const char *iscsi_client_info(struct Scsi_Host *SChost);int iscsi_client_detect(Scsi_Host_Template *);int iscsi_client_command(Scsi_Cmnd * SCpnt);int iscsi_client_queuecommand(Scsi_Cmnd * SCpnt, void (*done) (Scsi_Cmnd *));int iscsi_client_abort(Scsi_Cmnd * SCpnt);int iscsi_client_reset(Scsi_Cmnd * SCpnt, unsigned int flags);int iscsi_client_bios_param(Disk * disk, kdev_t dev, int *ip); /* Using 1500 byte ethernet packets, minus 20 byte IP Header, * minus 20 byte TCP Header, minus 48-byte iSCSI Header leaves us with * 1412 bytes, we can only fit 2 * 512 byte blocks :( * We should really check the Path-MTU of the target we're * talking to. It's expected that this value will be variable * for each instantiation of the driver */ /* Right now we'll limit cmd_per_lun to 1 for proof of concept. At a later * date this should get set to the the maximum number of connections * in a particular session a target is willing to support. */#define ISCSI_CLIENT { \ proc_info: iscsi_client_proc_info, \ proc_name: "iscsi_client", \ name: "iSCSI Client Adapter", \ detect: iscsi_client_detect, \ info: iscsi_client_info, \ command: iscsi_client_command, \ queuecommand: iscsi_client_queuecommand, \ abort: iscsi_client_abort, \ reset: iscsi_client_reset, \ bios_param: iscsi_client_bios_param, \ can_queue: 1, \ this_id: ISCSI_CLIENT_SCSI_ID, \ sg_tablesize: ISCSI_CLIENT_SG_TABLE_SIZE, \ cmd_per_lun: 1, \ unchecked_isa_dma: 0, \ use_clustering: ENABLE_CLUSTERING \}#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -