defs_linux.go 885 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // Copyright 2017 The Go Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. // +build ignore
  5. // +godefs map struct_in_addr [4]byte /* in_addr */
  6. // +godefs map struct_in6_addr [16]byte /* in6_addr */
  7. package socket
  8. /*
  9. #include <linux/in.h>
  10. #include <linux/in6.h>
  11. #define _GNU_SOURCE
  12. #include <sys/socket.h>
  13. */
  14. import "C"
  15. type iovec C.struct_iovec
  16. type msghdr C.struct_msghdr
  17. type mmsghdr C.struct_mmsghdr
  18. type cmsghdr C.struct_cmsghdr
  19. type sockaddrInet C.struct_sockaddr_in
  20. type sockaddrInet6 C.struct_sockaddr_in6
  21. const (
  22. sizeofIovec = C.sizeof_struct_iovec
  23. sizeofMsghdr = C.sizeof_struct_msghdr
  24. sizeofMmsghdr = C.sizeof_struct_mmsghdr
  25. sizeofCmsghdr = C.sizeof_struct_cmsghdr
  26. sizeofSockaddrInet = C.sizeof_struct_sockaddr_in
  27. sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
  28. )