rem: pUmDevice->block = *((uint8 *)(data));
add: pUmDevice->block = !*((uint8 *)(data));
context: status_t b57_ioctl(void *cookie,uint32 op,void *data,size_t len) {	struct be_b57_dev *pUmDevice = (struct be_b57_dev *)(cookie);	switch (op) {		case ETHER_INIT:			return B_OK;		case ETHER_GETADDR:			if (data == NULL)				return B_ERROR;							memcpy(data,pUmDevice->lm_dev.NodeAddress,6);			return B_OK;		case ETHER_NONBLOCK:			pUmDevice->block = *((uint8 *)(data));			return B_OK;		case ETHER_ADDMULTI:			return (LM_MulticastAdd(&pUmDevice->lm_dev,(PLM_UINT8)(data)) == LM_STATUS_SUCCESS) ? B_OK : B_ERROR;		case ETHER_REMMULTI:			return (LM_MulticastDel(&pUmDevice->lm_dev,(PLM_UINT8)(data)) == LM_STATUS_SUCCESS) ? B_OK : B_ERROR;		case ETHER_SETPROMISC:			if (*((uint8 *)(data)))				LM_SetReceiveMask(&pUmDevice->lm_dev,					pUmDevice->lm_dev.ReceiveMask | LM_PROMISCUOUS_MODE);			else				 LM_SetReceiveMask(&pUmDevice->lm_dev,					pUmDevice->lm_dev.ReceiveMask & ~LM_PROMISCUOUS_MODE);			return B_OK;		case ETHER_GETLINKSTATE: {			ether_link_state_t *state_buffer = (ether_link_state_t *)(data);			state_buffer->link_speed = pUmDevice->lm_dev.LineSpeed;			state_buffer->link_quality = (pUmDevice->lm_dev.LinkStatus == LM_STATUS_LINK_DOWN) ? 0.0 : 1.0;			state_buffer->duplex_mode = (pUmDevice->lm_dev.DuplexMode == LM_DUPLEX_MODE_FULL);			} return B_OK;	}	return B_ERROR;}