david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

Make the "drive number" option apply to iSCSI as well as AoE

This commit is contained in:
Michael Brown 2006-11-29 00:27:10 +00:00
parent 3234ef1b0b
commit 70d4b4f7cf
2 changed files with 8 additions and 3 deletions

View File

@ -23,7 +23,8 @@ static int test_dhcp_iscsi_boot ( struct net_device *netdev, char *iscsiname ) {
struct sockaddr_in sin;
struct sockaddr_tcpip st;
} target;
unsigned int drivenum;
memset ( &target, 0, sizeof ( target ) );
target.sin.sin_family = AF_INET;
target.sin.sin_port = htons ( ISCSI_PORT );
@ -40,8 +41,10 @@ static int test_dhcp_iscsi_boot ( struct net_device *netdev, char *iscsiname ) {
dhcp_snprintf ( password, sizeof ( password ),
find_global_dhcp_option ( DHCP_EB_PASSWORD ) );
drivenum = find_global_dhcp_num_option ( DHCP_EB_BIOS_DRIVE );
return test_iscsiboot ( initiator_iqn, &target.st, target_iqn,
username, password, netdev );
username, password, netdev, drivenum );
}
static int test_dhcp_hello ( char *helloname ) {

View File

@ -15,7 +15,8 @@ int test_iscsiboot ( const char *initiator_iqn,
const char *target_iqn,
const char *username,
const char *password,
struct net_device *netdev ) {
struct net_device *netdev,
unsigned int drivenum ) {
struct int13_drive drive;
int rc;
@ -36,6 +37,7 @@ int test_iscsiboot ( const char *initiator_iqn,
ibft_fill_data ( netdev, initiator_iqn, target, target_iqn );
#endif
memset ( &drive, 0, sizeof ( drive ) );
drive.drive = drivenum;
drive.blockdev = &test_iscsidev.scsi.blockdev;
register_int13_drive ( &drive );
printf ( "Registered %s as BIOS drive %#02x\n",