Data Structures | |
| struct | s_PXENV_UNDI_SET_STATION_ADDRESS |
| Parameter block for pxenv_undi_set_station_address(). More... | |
Defines | |
| #define | PXENV_UNDI_SET_STATION_ADDRESS 0x000a |
| PXE API function code for pxenv_undi_set_station_address(). | |
Typedefs | |
| typedef struct s_PXENV_UNDI_SET_STATION_ADDRESS | PXENV_UNDI_SET_STATION_ADDRESS_t |
Functions | |
| PXENV_EXIT_t | pxenv_undi_set_station_address (struct s_PXENV_UNDI_SET_STATION_ADDRESS *undi_set_station_address) |
| #define PXENV_UNDI_SET_STATION_ADDRESS 0x000a |
PXE API function code for pxenv_undi_set_station_address().
Definition at line 1162 of file pxe_api.h.
Referenced by pxe_api_call(), pxeparent_function_name(), and undinet_open().
| typedef struct s_PXENV_UNDI_SET_STATION_ADDRESS PXENV_UNDI_SET_STATION_ADDRESS_t |
| PXENV_EXIT_t pxenv_undi_set_station_address | ( | struct s_PXENV_UNDI_SET_STATION_ADDRESS * | undi_set_station_address | ) |
Definition at line 359 of file pxe_undi.c.
References DBG, net_device::ll_addr, ll_protocol::ll_addr_len, net_device::ll_protocol, memcpy, netdev_is_open(), ll_protocol::ntoa, PXENV_EXIT_FAILURE, PXENV_EXIT_SUCCESS, PXENV_STATUS_SUCCESS, PXENV_STATUS_UNDI_INVALID_STATE, s_PXENV_UNDI_SET_STATION_ADDRESS::StationAddress, and s_PXENV_UNDI_SET_STATION_ADDRESS::Status.
Referenced by pxe_api_call().
00360 { 00361 struct ll_protocol *ll_protocol = pxe_netdev->ll_protocol; 00362 00363 DBG ( "PXENV_UNDI_SET_STATION_ADDRESS %s", 00364 ll_protocol->ntoa ( undi_set_station_address->StationAddress ) ); 00365 00366 /* If adapter is open, the change will have no effect; return 00367 * an error 00368 */ 00369 if ( netdev_is_open ( pxe_netdev ) ) { 00370 DBG ( " failed: netdev is open\n" ); 00371 undi_set_station_address->Status = 00372 PXENV_STATUS_UNDI_INVALID_STATE; 00373 return PXENV_EXIT_FAILURE; 00374 } 00375 00376 /* Update MAC address */ 00377 memcpy ( pxe_netdev->ll_addr, 00378 &undi_set_station_address->StationAddress, 00379 ll_protocol->ll_addr_len ); 00380 00381 DBG ( "\n" ); 00382 undi_set_station_address->Status = PXENV_STATUS_SUCCESS; 00383 return PXENV_EXIT_SUCCESS; 00384 }
1.5.7.1