_network_LAN.c 781 B

1234567891011121314151617181920212223242526
  1. #include "_network_LAN.h"
  2. #include "../pikascript-lib/PikaStdDevice/pika_hal.h"
  3. #include "PikaStdData_List.h"
  4. #include "PikaStdData_Tuple.h"
  5. #include "_network_common.h"
  6. void _network_LAN___init__(PikaObj* self, int interface_id) {
  7. char LAN_NAME[] = "LAN0";
  8. LAN_NAME[3] = '0' + interface_id;
  9. pika_debug("LAN_NAME: %s\n", LAN_NAME);
  10. pika_dev* hal_lan = pika_hal_open(PIKA_HAL_LAN, LAN_NAME);
  11. if (hal_lan == NULL) {
  12. return;
  13. }
  14. pika_hal_LAN_config cfg = {0};
  15. _net_check_res(pika_hal_ioctl(hal_lan, PIKA_HAL_IOCTL_CONFIG, &cfg));
  16. obj_setPtr(self, "hal_dev", hal_lan);
  17. }
  18. int _network_LAN_isconnected(PikaObj* self) {
  19. if (_network_NET_status(self) == PIKA_HAL_LAN_STATUS_GOT_IP) {
  20. return 1;
  21. } else {
  22. return 0;
  23. }
  24. }