servers/lwip/proto.h

http://www.minix3.org/ · C Header · 58 lines · 45 code · 9 blank · 4 comment · 0 complexity · 0144b1fa05c28336780fa167e66c3233 MD5 · raw file

  1. #ifndef __LWIP_PROTO_H__
  2. #define __LWIP_PROTO_H__
  3. #include <errno.h>
  4. #include <minix/ipc.h>
  5. #include <minix/endpoint.h>
  6. #include <minix/syslib.h>
  7. #include <minix/safecopies.h>
  8. #include <minix/const.h>
  9. #include <lwip/err.h>
  10. #include <lwip/netif.h>
  11. #if 0
  12. #define debug_print(str, ...) printf("LWIP %s:%d : " str "\n", \
  13. __func__, __LINE__, ##__VA_ARGS__)
  14. #else
  15. #define debug_print(...)
  16. #endif
  17. /* driver .c */
  18. void nic_assign_driver(const char * dev_type,
  19. unsigned dev_num,
  20. const char * driver_name,
  21. unsigned instance,
  22. int is_default);
  23. void nic_init_all(void);
  24. void driver_request(message * m);
  25. void driver_up(const char * label, endpoint_t ep);
  26. /* opens a raw NIC socket */
  27. void nic_open(message *m);
  28. void nic_default_ioctl(message *m);
  29. /* inet_config.c */
  30. void inet_read_conf(void);
  31. /* eth.c */
  32. err_t ethernetif_init(struct netif *netif);
  33. static inline int copy_from_user(endpoint_t proc,
  34. void * dst_ptr,
  35. size_t size,
  36. cp_grant_id_t gid,
  37. vir_bytes offset)
  38. {
  39. return sys_safecopyfrom(proc, gid, offset, (vir_bytes)dst_ptr, size, D);
  40. }
  41. static inline int copy_to_user(endpoint_t proc,
  42. void * src_ptr,
  43. size_t size,
  44. cp_grant_id_t gid,
  45. vir_bytes offset)
  46. {
  47. return sys_safecopyto(proc, gid, offset, (vir_bytes)src_ptr, size, D);
  48. }
  49. #endif /* __LWIP_PROTO_H__ */