1. 27 Jun, 2017 1 commit
  2. 26 Jun, 2017 2 commits
  3. 23 Jun, 2017 1 commit
  4. 15 Jun, 2017 1 commit
  5. 08 Jun, 2017 1 commit
  6. 07 Jun, 2017 1 commit
  7. 29 May, 2017 1 commit
  8. 24 May, 2017 1 commit
    • Matt Layher's avatar
      unix: add IoctlGetInt and IoctlSetInt on Linux · a55a7608
      Matt Layher authored
      This CL adds basic integer get/set functions which wrap a generic
      ioctl call.  The API is similar the one introduced for solaris/amd64
      in CL 14587, but the request parameter has been changed to a uint
      instead of an int.  This makes requests with a number larger than the
      maximum signed 32-bit integer work on linux/386.
      
      For consistency, the solaris/amd64 API has also been updated to make
      use of a uint instead of an int for the request number.
      
      Fixes golang/go#20474
      
      Change-Id: Iaae1ee2e4bb4bfcc420dcec252fe53c8d90ce81d
      Reviewed-on: https://go-review.googlesource.com/44009
      Run-TryBot: Matt Layher <mdlayher@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      a55a7608
  9. 21 May, 2017 1 commit
  10. 18 May, 2017 2 commits
  11. 17 May, 2017 1 commit
  12. 14 May, 2017 1 commit
  13. 12 May, 2017 4 commits
  14. 11 May, 2017 3 commits
  15. 27 Apr, 2017 2 commits
  16. 25 Apr, 2017 1 commit
  17. 24 Apr, 2017 1 commit
    • joerichey@google.com's avatar
      unix: add support for Linux filesystem encryption · 8c0a5eac
      joerichey@google.com authored
      This CL adds in the necessary types and constants to support Linux
      filesystem encryption. This includes the structs for the keys and
      polices as well as the constants for key size and encryption algorithms.
      
      This code also reduces the scope of some of the regexes in mkerrors.sh.
      This is to reduce the number of unrelated constants added in with this
      change.
      
      Note that due to a bug in the Linux uapi headers, not all of the
      necessary constants and structures are declared in linux/fs.h despite
      being part of the kernel ABI. This means that some constants and types
      had to be manually added in.
      
      The bug has been patched (https://patchwork.kernel.org/patch/9662723),
      and the manual additions can be removed when the patch is merged into
      the mainline kernel.
      
      Change-Id: Ib508ad99bdf4c0068933ffcf351c52bb359cfcf4
      Reviewed-on: https://go-review.googlesource.com/41417Reviewed-by: 's avatarMatt Layher <mdlayher@gmail.com>
      Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
      Run-TryBot: Matt Layher <mdlayher@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      8c0a5eac
  18. 21 Apr, 2017 1 commit
    • Joe Richey's avatar
      unix: generate all Linux go files from source · ea9bcade
      Joe Richey authored
      Right now the process for adding in new constants, errors, or syscalls
      for Linux is a pain and unreliable. The scripts are designed to be run
      on the target architecture and use the header files installed on the
      user's system. This makes it hard to generate files for all the
      architectures or to have consistency between users. See golang/go#15282.
      
      This CL fixes this issue by making all of the files for the 11 supported
      architectures directly from source checkouts of Linux, glibc, and bluez.
      This is done using Docker, the gcc cross-compilers, and qemu emulation.
      Previously discussed here:
          https://go-review.googlesource.com/c/37589/
      
      A README.md file is also added to explain how all the parts of the build
      system work.
      
      In order to get the build working for all the architectures, I made
      some changes to the other scripts called from mkall_linux.go:
        - Files only used for generating linux code, moved to linux/
        - linux/mksysnum.pl supports a specified CC compiler.
        - The generated C code in mkerrors.sh changed to avoid a warning
        - mkerrors.sh headers changed to fix powerpc64 bug in sys/ioctl.h
        - linux/types.go no longer needs to export Ptrace structs in lowercase
      
      Build instructions:
        - Host system needs to be x86-64 Linux
        - Install Docker (https://docs.docker.com/engine/installation/)
        - ./mkall.sh (That's it!!!)
      
      Change-Id: I87067c14442ba12f8d51991349a43a9d73f38ae0
      Reviewed-on: https://go-review.googlesource.com/37943Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
      ea9bcade
  19. 07 Apr, 2017 2 commits
  20. 06 Apr, 2017 1 commit
  21. 05 Apr, 2017 1 commit
  22. 03 Apr, 2017 1 commit
  23. 29 Mar, 2017 1 commit
  24. 25 Mar, 2017 1 commit
  25. 22 Mar, 2017 1 commit
  26. 08 Mar, 2017 2 commits
  27. 03 Mar, 2017 1 commit
  28. 01 Mar, 2017 1 commit
  29. 28 Feb, 2017 1 commit
    • Joe Richey's avatar
      unix: update syscall numbers to 4.10 kernel · 21f2569f
      Joe Richey authored
      The syscall numbers for Linux were out of date, so with the release of
      the 4.10 kernel, now seemed like a reasonable time to update them. Note
      that this change is mostly additive except that it removes some invalid
      syscalls for arm, and it removes all constants that refer to either the
      syscall base or total number of syscalls. Previous versions had only
      removed some of them.
      
      The updated syscall numbers were pulled directly from a header build
      of the 4.10 kernel. This required some minor adjustements to the sysnum
      generating perl script and is why the comments at the tops of the
      generated files look slightly different. I could include the script I
      used to do this, but right now it cannot generate the zerrors and ztypes
      files.
      
      Change-Id: Id94b967eb917f8f87500f818f2e494df9bccf2e0
      Reviewed-on: https://go-review.googlesource.com/37570Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
      21f2569f
  30. 23 Feb, 2017 1 commit