Upgrade to shirou/gopsutil 3.21.5 to fix openbsd build error (#11740)
This commit is contained in:
parent
daaec9bdee
commit
b4b050fbf6
3
go.mod
3
go.mod
|
@ -148,9 +148,10 @@ require (
|
|||
github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da
|
||||
github.com/sasha-s/go-deadlock v0.2.0
|
||||
github.com/sethvargo/go-limiter v0.3.0
|
||||
github.com/shirou/gopsutil v3.21.1+incompatible
|
||||
github.com/shirou/gopsutil v3.21.5+incompatible
|
||||
github.com/stretchr/testify v1.7.0
|
||||
github.com/tidwall/pretty v1.0.1 // indirect
|
||||
github.com/tklauser/go-sysconf v0.3.6 // indirect
|
||||
github.com/ulikunitz/xz v0.5.7 // indirect
|
||||
github.com/xdg/stringprep v1.0.0 // indirect
|
||||
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
|
||||
|
|
73
go.sum
73
go.sum
|
@ -17,12 +17,15 @@ cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbf
|
|||
cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=
|
||||
cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=
|
||||
cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg=
|
||||
cloud.google.com/go/bigquery v1.6.0 h1:ajp/DjpiCHO71SyIhwb83YsUGAyWuzVvMko+9xCsJLw=
|
||||
cloud.google.com/go/bigquery v1.6.0/go.mod h1:hyFDG0qSGdHNz8Q6nDN8rYIkld0q/+5uBZaelxiDLfE=
|
||||
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
|
||||
cloud.google.com/go/datastore v1.1.0 h1:/May9ojXjRkPBNVrq+oWLqmWCkr4OU5uRY29bu0mRyQ=
|
||||
cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
|
||||
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
|
||||
cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw=
|
||||
cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA=
|
||||
cloud.google.com/go/pubsub v1.3.1 h1:ukjixP1wl0LpnZ6LWtZJ0mX5tBmjp1f8Sqer8Z2OMUU=
|
||||
cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU=
|
||||
cloud.google.com/go/spanner v1.5.1 h1:dWyj10TLlaxH2No6+tXsSCaq9oWgrRbXy1N3x/bhMGU=
|
||||
cloud.google.com/go/spanner v1.5.1/go.mod h1:e1+8M6PF3ntV9Xr57X2Gf+UhylXXYF6gI4WRZ1kfu2A=
|
||||
|
@ -82,6 +85,7 @@ github.com/Azure/go-autorest/autorest/mocks v0.1.0/go.mod h1:OTyCOPRA2IgIlWxVYxB
|
|||
github.com/Azure/go-autorest/autorest/mocks v0.2.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0=
|
||||
github.com/Azure/go-autorest/autorest/mocks v0.3.0/go.mod h1:a8FDP3DYzQ4RYfVAxAN3SVSiiO77gL2j2ronKKP0syM=
|
||||
github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k=
|
||||
github.com/Azure/go-autorest/autorest/mocks v0.4.1 h1:K0laFcLE6VLTOwNgSxaGbUcLPuGXlNkbVvq4cW4nIHk=
|
||||
github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k=
|
||||
github.com/Azure/go-autorest/autorest/to v0.3.0/go.mod h1:MgwOyqaIuKdG4TL/2ywSsIWKAfJfgHDo8ObuUk3t5sA=
|
||||
github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk=
|
||||
|
@ -134,6 +138,7 @@ github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMx
|
|||
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d h1:G0m3OIz70MZUWq3EgK3CesDbo8upS2Vm9/P3FtgI+Jk=
|
||||
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg=
|
||||
github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g=
|
||||
github.com/abdullin/seq v0.0.0-20160510034733-d5467c17e7af h1:DBNMBMuMiWYu0b+8KMJuWmfCkcxl09JwdlqwDZZ6U14=
|
||||
github.com/abdullin/seq v0.0.0-20160510034733-d5467c17e7af/go.mod h1:5Jv4cbFiHJMsVxt52+i0Ha45fjshj6wxYr1r19tB9bw=
|
||||
github.com/aerospike/aerospike-client-go v3.1.1+incompatible h1:+zAuvKMI9rq/hdpwX8srmFvDKfprMPX1SQGMLkBpvuc=
|
||||
github.com/aerospike/aerospike-client-go v3.1.1+incompatible/go.mod h1:zj8LBEnWBDOVEIJt8LvaRvDG5ARAoa5dBeHaB472NRc=
|
||||
|
@ -179,6 +184,7 @@ github.com/aws/aws-sdk-go v1.34.28/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/
|
|||
github.com/aws/aws-sdk-go v1.37.19 h1:/xKHoSsYfH9qe16pJAHIjqTVpMM2DRSsEt8Ok1bzYiw=
|
||||
github.com/aws/aws-sdk-go v1.37.19/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
|
||||
github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=
|
||||
github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f h1:ZNv7On9kyUzm7fvRZumSyy/IUiSC7AzL0I1jKKtwooA=
|
||||
github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc=
|
||||
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
|
||||
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
|
||||
|
@ -187,7 +193,9 @@ github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6r
|
|||
github.com/bgentry/speakeasy v0.1.0 h1:ByYyxL9InA1OWqxJqqp2A5pYHUrCiAL6K3J+LKSsQkY=
|
||||
github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs=
|
||||
github.com/bitly/go-hostpool v0.0.0-20171023180738-a3a6125de932/go.mod h1:NOuUCSz6Q9T7+igc/hlvDOUdtWKryOrtFyIVABv/p7k=
|
||||
github.com/bitly/go-hostpool v0.1.0 h1:XKmsF6k5el6xHG3WPJ8U0Ku/ye7njX7W81Ng7O2ioR0=
|
||||
github.com/bitly/go-hostpool v0.1.0/go.mod h1:4gOCgp6+NZnVqlKyZ/iBZFTAJKembaVENUpMkpg42fw=
|
||||
github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869 h1:DDGfHa7BWjL4YnC6+E63dPcxHo2sUxDIu8g3QgEJdRY=
|
||||
github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4=
|
||||
github.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx27Ps=
|
||||
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc h1:biVzkmvwrH8WK8raXaxBx6fRVTlJILwEwQGL1I/ByEI=
|
||||
|
@ -223,11 +231,14 @@ github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDk
|
|||
github.com/cloudfoundry-community/go-cfclient v0.0.0-20190201205600-f136f9222381 h1:rdRS5BT13Iae9ssvcslol66gfOOXjaLYwqerEn/cl9s=
|
||||
github.com/cloudfoundry-community/go-cfclient v0.0.0-20190201205600-f136f9222381/go.mod h1:e5+USP2j8Le2M0Jo3qKPFnNhuo1wueU4nWHCXBOfQ14=
|
||||
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
|
||||
github.com/cockroachdb/apd v1.1.0 h1:3LFP3629v+1aKXU5Q37mxmRxX/pIu1nijXydLShEq5I=
|
||||
github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ=
|
||||
github.com/cockroachdb/cockroach-go v0.0.0-20181001143604-e0a95dfd547c h1:2zRrJWIt/f9c9HhNHAgrRgq0San5gRRUJTBXLkchal0=
|
||||
github.com/cockroachdb/cockroach-go v0.0.0-20181001143604-e0a95dfd547c/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk=
|
||||
github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa h1:OaNxuTZr7kxeODyLWsRMC+OD03aFUH+mW6r2d+MWa5Y=
|
||||
github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8=
|
||||
github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI=
|
||||
github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q=
|
||||
github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM=
|
||||
github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko=
|
||||
github.com/containerd/cgroups v0.0.0-20200531161412-0dbf7f05ba59/go.mod h1:pA0z1pT8KYB3TCXK/ocprsh7MAkoW8bZVzPdih9snmM=
|
||||
|
@ -268,6 +279,7 @@ github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwc
|
|||
github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
|
||||
github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=
|
||||
github.com/creack/pty v1.1.9 h1:uDmaGzcdjhF4i/plgjmEsriH11Y0o7RKapEf/LDaM3w=
|
||||
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
|
@ -286,6 +298,7 @@ github.com/digitalocean/godo v1.7.5/go.mod h1:h6faOIcZ8lWIwNQ+DN7b3CgX4Kwby5T+nb
|
|||
github.com/dimchansky/utfbom v1.1.0/go.mod h1:rO41eb7gLfo8SF1jd9F8HplJm1Fewwi4mQvIirEdv+8=
|
||||
github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U=
|
||||
github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE=
|
||||
github.com/dnaeon/go-vcr v1.0.1 h1:r8L/HqC0Hje5AXMu1ooW8oyQyOFv4GxqpL0nRP7SLLY=
|
||||
github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E=
|
||||
github.com/docker/distribution v2.7.1+incompatible h1:a5mlkVzth6W5A4fOsS3D2EO5BUmsJpcB+cRlLU7cSug=
|
||||
github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
|
||||
|
@ -304,6 +317,7 @@ github.com/dsnet/golib v0.0.0-20171103203638-1ea166775780/go.mod h1:Lj+Z9rebOhdf
|
|||
github.com/duosecurity/duo_api_golang v0.0.0-20190308151101-6c680f768e74 h1:2MIhn2R6oXQbgW5yHfS+d6YqyMfXiu2L55rFZC4UD/M=
|
||||
github.com/duosecurity/duo_api_golang v0.0.0-20190308151101-6c680f768e74/go.mod h1:UqXY1lYT/ERa4OEAywUqdok1T4RCRdArkhic1Opuavo=
|
||||
github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
|
||||
github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo=
|
||||
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
|
||||
github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5mFgVsvEsIPBvNs=
|
||||
github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU=
|
||||
|
@ -333,6 +347,7 @@ github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVB
|
|||
github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20=
|
||||
github.com/frankban/quicktest v1.4.0/go.mod h1:36zfPVQyHxymz4cH7wlDmVwDrJuljRB60qkgn7rorfQ=
|
||||
github.com/frankban/quicktest v1.4.1/go.mod h1:36zfPVQyHxymz4cH7wlDmVwDrJuljRB60qkgn7rorfQ=
|
||||
github.com/frankban/quicktest v1.10.0 h1:Gfh+GAJZOAoKZsIZeZbdn2JF10kN1XHNvjsvQK8gVkE=
|
||||
github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y=
|
||||
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||
github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa h1:RDBNVkRviHZtvDvId8XSGPu3rmpmSe+wKRcEWNgsfWU=
|
||||
|
@ -368,6 +383,7 @@ github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9
|
|||
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
|
||||
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
|
||||
github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
|
||||
github.com/go-martini/martini v0.0.0-20170121215854-22fa46961aab h1:xveKWz2iaueeTaUgdetzel+U7exyigDYBryyVfV/rZk=
|
||||
github.com/go-martini/martini v0.0.0-20170121215854-22fa46961aab/go.mod h1:/P9AEU963A2AYjv4d1V5eVL1CQbEJq6aCNHDDjibzu8=
|
||||
github.com/go-ole/go-ole v1.2.4 h1:nNBDSCOigTSiarFpYE9J/KtEA1IOW4CNeqT9TQDqCxI=
|
||||
github.com/go-ole/go-ole v1.2.4/go.mod h1:XCwSNxSkXRo4vlyPy93sltvi/qJq0jqQhjqQNIwKuxM=
|
||||
|
@ -437,6 +453,7 @@ github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfb
|
|||
github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y=
|
||||
github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw=
|
||||
github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw=
|
||||
github.com/golang/mock v1.4.3 h1:GV+pQPG/EUUbkh47niozDcADz6go/dUwhVzdUQHIVRw=
|
||||
github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw=
|
||||
github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
|
@ -459,6 +476,7 @@ github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEW
|
|||
github.com/golang/snappy v0.0.2 h1:aeE13tS0IiQgFjYdoL8qN3K1N2bXXtI6Vi51/y7BpMw=
|
||||
github.com/golang/snappy v0.0.2/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
|
||||
github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
|
||||
github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo=
|
||||
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
|
||||
github.com/google/flatbuffers v1.11.0 h1:O7CEyB8Cb3/DmtxODGtLHcEvpr81Jm5qLg/hsHnxA2A=
|
||||
github.com/google/flatbuffers v1.11.0/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=
|
||||
|
@ -482,6 +500,7 @@ github.com/google/gofuzz v0.0.0-20170612174753-24818f796faf/go.mod h1:HP5RmnzzSN
|
|||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g=
|
||||
github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no=
|
||||
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
|
||||
github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=
|
||||
github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=
|
||||
|
@ -502,26 +521,34 @@ github.com/googleapis/gnostic v0.2.0/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTV
|
|||
github.com/gophercloud/gophercloud v0.1.0 h1:P/nh25+rzXouhytV2pUHBb65fnds26Ghl8/391+sT5o=
|
||||
github.com/gophercloud/gophercloud v0.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8=
|
||||
github.com/gopherjs/gopherjs v0.0.0-20180628210949-0892b62f0d9f/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
|
||||
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8=
|
||||
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
|
||||
github.com/gorhill/cronexpr v0.0.0-20180427100037-88b0669f7d75 h1:f0n1xnMSmBLzVfsMMvriDyA75NB/oBgILX2GcHXIQzY=
|
||||
github.com/gorhill/cronexpr v0.0.0-20180427100037-88b0669f7d75/go.mod h1:g2644b03hfBX9Ov0ZBDgXXens4rxSxmqFBbhvKv2yVA=
|
||||
github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=
|
||||
github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
|
||||
github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
|
||||
github.com/gorilla/mux v1.7.4 h1:VuZ8uybHlWmqV03+zRzdwKL4tUnIp1MAQtp1mIFE1bc=
|
||||
github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
|
||||
github.com/gorilla/securecookie v1.1.1 h1:miw7JPhV+b/lAHSXz4qd/nN9jRiAFV5FwjeKyCS8BvQ=
|
||||
github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4=
|
||||
github.com/gorilla/sessions v1.2.0 h1:S7P+1Hm5V/AT9cjEcUD5uDaQSX0OE577aCXgoaKpYbQ=
|
||||
github.com/gorilla/sessions v1.2.0/go.mod h1:dk2InVEVJ0sfLlnXv9EAgkf6ecYs/i80K/zI+bUmuGM=
|
||||
github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
|
||||
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
|
||||
github.com/gorilla/websocket v1.4.1 h1:q7AeDBpnBk8AogcD4DSag/Ukw/KV+YhzLj2bP5HvKCM=
|
||||
github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
||||
github.com/gotestyourself/gotestyourself v2.2.0+incompatible h1:AQwinXlbQR2HvPjQZOmDhRqsv5mZf+Jb1RnSLxcqZcI=
|
||||
github.com/gotestyourself/gotestyourself v2.2.0+incompatible/go.mod h1:zZKM6oeNM8k+FRljX1mnzVYeS8wiGgQyvST1/GafPbY=
|
||||
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA=
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4 h1:z53tR0945TRRQO/fLEVPI6SMv7ZflF0TEaTAoU7tOzg=
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
|
||||
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho=
|
||||
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
|
||||
github.com/grpc-ecosystem/grpc-gateway v1.6.2/go.mod h1:RSKVYQBd5MCa4OVpNdGskqpgL2+G+NZTnrVHpWWfpdw=
|
||||
github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=
|
||||
github.com/grpc-ecosystem/grpc-gateway v1.9.5 h1:UImYN5qQ8tuGpGE16ZmjvcTtTw24zw1QAp/SlnNrZhI=
|
||||
github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=
|
||||
github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed h1:5upAirOpQc1Q53c0bnx2ufif5kANL7bfZWcc6VJWJd8=
|
||||
github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed/go.mod h1:tMWxXQ9wFIaZeTI9F+hmhFiGpFmhOHzyShyFUhRm0H4=
|
||||
|
@ -535,6 +562,7 @@ github.com/hashicorp/consul/api v1.4.0/go.mod h1:xc8u05kyMa3Wjr9eEAsIAo3dg8+LywT
|
|||
github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8=
|
||||
github.com/hashicorp/consul/sdk v0.3.0/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8=
|
||||
github.com/hashicorp/consul/sdk v0.4.0/go.mod h1:fY08Y9z5SvJqevyZNy6WWPXiG3KwBPAvlcdx16zZ0fM=
|
||||
github.com/hashicorp/consul/sdk v0.4.1-0.20200910203702-bb2b5dd871ca h1:DYR7hPxUqDQP4h3eX9/wI4J2yzL3QEsXi3TCXYtAgGI=
|
||||
github.com/hashicorp/consul/sdk v0.4.1-0.20200910203702-bb2b5dd871ca/go.mod h1:fY08Y9z5SvJqevyZNy6WWPXiG3KwBPAvlcdx16zZ0fM=
|
||||
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
|
||||
github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I=
|
||||
|
@ -547,6 +575,7 @@ github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9n
|
|||
github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48=
|
||||
github.com/hashicorp/go-discover v0.0.0-20201029210230-738cb3105cd0 h1:UgODETBAoROFMSSVgg0v8vVpD9Tol8FtYcAeomcWJtY=
|
||||
github.com/hashicorp/go-discover v0.0.0-20201029210230-738cb3105cd0/go.mod h1:D4eo8/CN92vm9/9UDG+ldX1/fMFa4kpl8qzyTolus8o=
|
||||
github.com/hashicorp/go-gatedio v0.5.0 h1:Jm1X5yP4yCqqWj5L1TgW7iZwCVPGtVc+mro5r/XX7Tg=
|
||||
github.com/hashicorp/go-gatedio v0.5.0/go.mod h1:Lr3t8L6IyxD3DAeaUxGcgl2JnRUpWMCsmBl4Omu/2t4=
|
||||
github.com/hashicorp/go-gcp-common v0.5.0/go.mod h1:IDGUI2N/OS3PiU4qZcXJeWKPI6O/9Y8hOrbSiMcqyYw=
|
||||
github.com/hashicorp/go-gcp-common v0.6.0 h1:m1X+DK003bj4WEjqOnv+Csepb3zpfN/bidboUeUSj68=
|
||||
|
@ -558,8 +587,6 @@ github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrj
|
|||
github.com/hashicorp/go-hclog v0.12.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
|
||||
github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
|
||||
github.com/hashicorp/go-hclog v0.15.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
|
||||
github.com/hashicorp/go-hclog v0.16.0 h1:uCeOEwSWGMwhJUdpUjk+1cVKIEfGu2/1nFXukimi2MU=
|
||||
github.com/hashicorp/go-hclog v0.16.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
|
||||
github.com/hashicorp/go-hclog v0.16.1 h1:IVQwpTGNRRIHafnTs2dQLIk4ENtneRIEEJWOVDqz99o=
|
||||
github.com/hashicorp/go-hclog v0.16.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
|
||||
github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
|
||||
|
@ -624,6 +651,7 @@ github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0m
|
|||
github.com/hashicorp/mdns v1.0.1 h1:XFSOubp8KWB+Jd2PDyaX5xUd5bhSP/+pTDZVDMzZJM8=
|
||||
github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY=
|
||||
github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I=
|
||||
github.com/hashicorp/memberlist v0.2.2 h1:5+RffWKwqJ71YPu9mWsF7ZOscZmwfasdA8kbdC7AO2g=
|
||||
github.com/hashicorp/memberlist v0.2.2/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE=
|
||||
github.com/hashicorp/nomad/api v0.0.0-20191220223628-edc62acd919d h1:BXqsASWhyiAiEVm6FcltF0dg8XvoookQwmpHn8lstu8=
|
||||
github.com/hashicorp/nomad/api v0.0.0-20191220223628-edc62acd919d/go.mod h1:WKCL+tLVhN1D+APwH3JiTRZoxcdwRk86bWu1LVCUPaE=
|
||||
|
@ -697,6 +725,7 @@ github.com/hashicorp/vic v1.5.1-0.20190403131502-bbfe86ec9443/go.mod h1:bEpDU35n
|
|||
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
||||
github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d h1:kJCB4vdITiW1eC1vq2e6IsrXKrZit1bv/TDYFGMp4BQ=
|
||||
github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
||||
github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI=
|
||||
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
|
||||
github.com/huaweicloud/golangsdk v0.0.0-20200304081349-45ec0797f2a4/go.mod h1:WQBcHRNX9shz3928lWEvstQJtAtYI7ks6XlgtRT9Tcw=
|
||||
github.com/hudl/fargo v1.3.0/go.mod h1:y3CKSmjA+wD2gak7sUSXTAoopbhU08POFhmITJgmKTg=
|
||||
|
@ -708,11 +737,13 @@ github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANyt
|
|||
github.com/influxdata/influxdb v0.0.0-20190411212539-d24b7ba8c4c4 h1:3K3KcD4S6/Y2hevi70EzUTNKOS3cryQyhUnkjE6Tz0w=
|
||||
github.com/influxdata/influxdb v0.0.0-20190411212539-d24b7ba8c4c4/go.mod h1:qZna6X/4elxqT3yI9iZYdZrWWdeFOOprn86kgg4+IzY=
|
||||
github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo=
|
||||
github.com/jackc/fake v0.0.0-20150926172116-812a484cc733 h1:vr3AYkKovP8uR8AvSGGUK1IDqRa5lAAvEkZG1LKaCRc=
|
||||
github.com/jackc/fake v0.0.0-20150926172116-812a484cc733/go.mod h1:WrMFNQdiFJ80sQsxDoMokWK1W5TQtxBFNpzWTD84ibQ=
|
||||
github.com/jackc/pgx v3.3.0+incompatible h1:Wa90/+qsITBAPkAZjiByeIGHFcj3Ztu+VzrrIpHjL90=
|
||||
github.com/jackc/pgx v3.3.0+incompatible/go.mod h1:0ZGrqGqkRlliWnWB4zKnWtjbSWbGkVEFm4TeybAXq+I=
|
||||
github.com/jarcoal/httpmock v0.0.0-20180424175123-9c70cfe4a1da/go.mod h1:ks+b9deReOc7jgqp+e7LuFiCBH6Rm5hL32cLcEAArb4=
|
||||
github.com/jarcoal/httpmock v1.0.4/go.mod h1:ATjnClrvW/3tijVmpL/va5Z3aAyGvqU3gCT8nX0Txik=
|
||||
github.com/jarcoal/httpmock v1.0.5 h1:cHtVEcTxRSX4J0je7mWPfc9BpDpqzXSJ5HbymZmyHck=
|
||||
github.com/jarcoal/httpmock v1.0.5/go.mod h1:ATjnClrvW/3tijVmpL/va5Z3aAyGvqU3gCT8nX0Txik=
|
||||
github.com/jcmturner/aescts v1.0.1 h1:5jhUSHbHSZjQeWFY//Lv8dpP/O3sMDOxrGV/IfCqh44=
|
||||
github.com/jcmturner/aescts v1.0.1/go.mod h1:k9gJoDUf1GH5r2IBtBjwjDCoLELYxOcEhitdP8RL7qQ=
|
||||
|
@ -736,8 +767,10 @@ github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht
|
|||
github.com/jmespath/go-jmespath v0.3.0/go.mod h1:9QtRXoHjLGCJ5IBSaohpXITPlowMeeYCZ7fLUTSywik=
|
||||
github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=
|
||||
github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
|
||||
github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8=
|
||||
github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=
|
||||
github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg=
|
||||
github.com/jonboulle/clockwork v0.1.0 h1:VKV+ZcuP6l3yW9doeqz6ziZGgcynBVQO+obU0+0hcPo=
|
||||
github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
|
||||
github.com/joyent/triton-go v0.0.0-20180628001255-830d2b111e62/go.mod h1:U+RSyWxWd04xTqnuOQxnai7XGS2PrPY2cfGoDKtMHjA=
|
||||
github.com/joyent/triton-go v1.7.1-0.20200416154420-6801d15b779f h1:ENpDacvnr8faw5ugQmEF1QYk+f/Y9lXFvuYmRxykago=
|
||||
|
@ -755,6 +788,7 @@ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1
|
|||
github.com/jstemmer/go-junit-report v0.9.1 h1:6QPYqodiu3GuPL+7mfx+NwDdp2eTkp9IfEUpgAwUN0o=
|
||||
github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk=
|
||||
github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
|
||||
github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo=
|
||||
github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
|
||||
github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
|
||||
github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM=
|
||||
|
@ -800,6 +834,7 @@ github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czP
|
|||
github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE=
|
||||
github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0=
|
||||
github.com/martini-contrib/render v0.0.0-20150707142108-ec18f8345a11 h1:YFh+sjyJTMQSYjKwM4dFKhJPJC/wfo98tPUc17HdoYw=
|
||||
github.com/martini-contrib/render v0.0.0-20150707142108-ec18f8345a11/go.mod h1:Ah2dBMoxZEqk118as2T4u4fjfXarE0pPnMJaArZQZsI=
|
||||
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
|
||||
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
|
||||
|
@ -872,6 +907,7 @@ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3Rllmb
|
|||
github.com/mongodb/go-client-mongodb-atlas v0.1.2 h1:qmUme1TlQBPZupmXMnpD8DxnfGXLVGs3w+0Z17HBiSA=
|
||||
github.com/mongodb/go-client-mongodb-atlas v0.1.2/go.mod h1:LS8O0YLkA+sbtOb3fZLF10yY3tJM+1xATXMJ3oU35LU=
|
||||
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
|
||||
github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A=
|
||||
github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc=
|
||||
github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
|
||||
github.com/mwielbut/pointy v1.1.0 h1:U5/YEfoIkaGCHv0St3CgjduqXID4FNRoyZgLM1kY9vg=
|
||||
|
@ -892,6 +928,7 @@ github.com/ncw/swift v1.0.47 h1:4DQRPj35Y41WogBxyhOXlrI37nzGlyEcsforeudyYPQ=
|
|||
github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM=
|
||||
github.com/nicolai86/scaleway-sdk v1.10.2-0.20180628010248-798f60e20bb2 h1:BQ1HW7hr4IVovMwWg0E0PYcyW8CzqDcVmaew9cujU4s=
|
||||
github.com/nicolai86/scaleway-sdk v1.10.2-0.20180628010248-798f60e20bb2/go.mod h1:TLb2Sg7HQcgGdloNxkrmtgDNR9uVYF3lfdFIN4Ro6Sk=
|
||||
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
|
||||
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
|
||||
github.com/nwaples/rardecode v1.1.0 h1:vSxaY8vQhOcVr4mm5e8XllHWTiM4JF507A0Katqw7MQ=
|
||||
github.com/nwaples/rardecode v1.1.0/go.mod h1:5DzqNKiOdpKKBH87u8VlvAnPZMXcGRhxWkRpHbbfGS0=
|
||||
|
@ -910,11 +947,13 @@ github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+W
|
|||
github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/ginkgo v1.11.0 h1:JAKSXpt1YjtLA7YpPiqO9ss6sNXEsPfSGdwN0UHqzrw=
|
||||
github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
|
||||
github.com/onsi/gomega v0.0.0-20190113212917-5533ce8a0da3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/onsi/gomega v1.7.0 h1:XPnZz8VVBHjVsy1vzJmRwIcSwiUO+JFfrv/xGiigmME=
|
||||
github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=
|
||||
github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
|
@ -948,11 +987,13 @@ github.com/ory/dockertest v3.3.5+incompatible h1:iLLK6SQwIhcbrG783Dghaaa3WPzGc+4
|
|||
github.com/ory/dockertest v3.3.5+incompatible/go.mod h1:1vX4m9wsvi00u5bseYwXaSnhNrne+V0E6LAcBILJdPs=
|
||||
github.com/ory/dockertest/v3 v3.6.2 h1:Q3Y8naCMyC1Nw91BHum1bGyEsNQc/UOIYS3ZoPoou0g=
|
||||
github.com/ory/dockertest/v3 v3.6.2/go.mod h1:EFLcVUOl8qCwp9NyDAcCDtq/QviLtYswW/VbWzUnTNE=
|
||||
github.com/oxtoacart/bpool v0.0.0-20150712133111-4e1c5567d7c2 h1:CXwSGu/LYmbjEab5aMCs5usQRVBGThelUKBNnoSOuso=
|
||||
github.com/oxtoacart/bpool v0.0.0-20150712133111-4e1c5567d7c2/go.mod h1:L3UMQOThbttwfYRNFOWLLVXMhk5Lkio4GGOtw5UrxS0=
|
||||
github.com/packethost/packngo v0.1.1-0.20180711074735-b9cb5096f54c h1:vwpFWvAO8DeIZfFeqASzZfsxuWPno9ncAebBEP0N3uE=
|
||||
github.com/packethost/packngo v0.1.1-0.20180711074735-b9cb5096f54c/go.mod h1:otzZQXgoO96RTzDB/Hycg0qZcXZsWJGJRSXbmEIJ+4M=
|
||||
github.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM=
|
||||
github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
|
||||
github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY=
|
||||
github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
|
||||
github.com/patrickmn/go-cache v0.0.0-20180815053127-5633e0862627/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ=
|
||||
github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc=
|
||||
|
@ -1031,6 +1072,7 @@ github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6So
|
|||
github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
|
||||
github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
|
||||
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
|
||||
github.com/rogpeppe/go-internal v1.6.2 h1:aIihoIOHCiLZHxyoNQ+ABL4NKhFTgKLBdMLyEAh98m0=
|
||||
github.com/rogpeppe/go-internal v1.6.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
|
||||
github.com/rs/zerolog v1.4.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU=
|
||||
github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g=
|
||||
|
@ -1044,14 +1086,17 @@ github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da h1:p3Vo3i64TCL
|
|||
github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E=
|
||||
github.com/sasha-s/go-deadlock v0.2.0 h1:lMqc+fUb7RrFS3gQLtoQsJ7/6TV/pAIFvBsqX73DK8Y=
|
||||
github.com/sasha-s/go-deadlock v0.2.0/go.mod h1:StQn567HiB1fF2yJ44N9au7wOhrPS3iZqiDbRupzT10=
|
||||
github.com/satori/go.uuid v1.2.0 h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww=
|
||||
github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
|
||||
github.com/sean-/conswriter v0.0.0-20180208195008-f5ae3917a627/go.mod h1:7zjs06qF79/FKAJpBvFx3P8Ww4UTIMAe+lpNXDHziac=
|
||||
github.com/sean-/pager v0.0.0-20180208200047-666be9bf53b5/go.mod h1:BeybITEsBEg6qbIiqJ6/Bqeq25bCLbL7YFmpaFfJDuM=
|
||||
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 h1:nn5Wsu0esKSJiIVhscUtVbo7ada43DJhG55ua/hjS5I=
|
||||
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=
|
||||
github.com/sethvargo/go-limiter v0.3.0 h1:yRMc+Qs2yqw6YJp6UxrO2iUs6DOSq4zcnljbB7/rMns=
|
||||
github.com/sethvargo/go-limiter v0.3.0/go.mod h1:C0kbSFbiriE5k2FFOe18M1YZbAR2Fiwf72uGu0CXCcU=
|
||||
github.com/shirou/gopsutil v3.21.1+incompatible h1:2LwXWdbjXwyDgq26Yy/OT4xozlpmssQfy/rtfhWb0bY=
|
||||
github.com/shirou/gopsutil v3.21.1+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
|
||||
github.com/shirou/gopsutil v3.21.5+incompatible h1:OloQyEerMi7JUrXiNzy8wQ5XN+baemxSl12QgIzt0jc=
|
||||
github.com/shirou/gopsutil v3.21.5+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
|
||||
github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24 h1:pntxY8Ary0t43dCZ5dqY4YTJCObLY1kIXl0uzMv+7DE=
|
||||
github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4=
|
||||
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
|
||||
github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc=
|
||||
|
@ -1063,9 +1108,11 @@ github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6Mwd
|
|||
github.com/sirupsen/logrus v1.6.0 h1:UBcNElsrwanuuMsnGSlYmtmgbb23qDR5dG+6X6Oo89I=
|
||||
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
|
||||
github.com/smartystreets/assertions v0.0.0-20180725160413-e900ae048470/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
|
||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM=
|
||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
|
||||
github.com/smartystreets/goconvey v0.0.0-20180222194500-ef6db91d284a/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s=
|
||||
github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
|
||||
github.com/smartystreets/goconvey v1.6.4 h1:fv0U8FUIMPNf1L9lnHLvLhgicrIVChEkdzIKYqbNC9s=
|
||||
github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
|
||||
github.com/snowflakedb/glog v0.0.0-20180824191149-f5055e6f21ce h1:CGR1hXCOeoZ1aJhCs8qdKJuEu3xoZnxsLcYoh5Bnr+4=
|
||||
github.com/snowflakedb/glog v0.0.0-20180824191149-f5055e6f21ce/go.mod h1:EB/w24pR5VKI60ecFnKqXzxX3dOorz1rnVicQTQrGM0=
|
||||
|
@ -1073,6 +1120,7 @@ github.com/snowflakedb/gosnowflake v1.3.11 h1:4VATaWPZv2HEh9bkZG5LaMux4WRiZJDu/P
|
|||
github.com/snowflakedb/gosnowflake v1.3.11/go.mod h1:+BMe9ivHWpzcXbM1qSIxWZ8qpWGBBaA46o9Z1qSfrNg=
|
||||
github.com/softlayer/softlayer-go v0.0.0-20180806151055-260589d94c7d h1:bVQRCxQvfjNUeRqaY/uT0tFuvuFY0ulgnczuR684Xic=
|
||||
github.com/softlayer/softlayer-go v0.0.0-20180806151055-260589d94c7d/go.mod h1:Cw4GTlQccdRGSEf6KiMju767x0NEHE0YIVPJSaXjlsw=
|
||||
github.com/soheilhy/cmux v0.1.4 h1:0HKaf1o97UwFjHH9o5XsHUOF+tqmdA7KEzXLpiyaw0E=
|
||||
github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
|
||||
github.com/sony/gobreaker v0.4.1/go.mod h1:ZKptC7FHNvhBz7dN2LGjPVBz2sZJmc0/PkyDJOjmxWY=
|
||||
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
|
||||
|
@ -1095,6 +1143,7 @@ github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/y
|
|||
github.com/square/go-jose v2.4.1+incompatible/go.mod h1:7MxpAF/1WTVUu8Am+T5kNy+t0902CaLWM4Z745MkOa8=
|
||||
github.com/square/go-jose/v3 v3.0.0-20200225220504-708a9fe87ddc/go.mod h1:JbpHhNyeVc538vtj/ECJ3gPYm1VEitNjsLhm4eJQQbg=
|
||||
github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=
|
||||
github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271 h1:WhxRHzgeVGETMlmVfqhRn8RIeeNoPr2Czh33I4Zdccw=
|
||||
github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw=
|
||||
github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
|
@ -1115,8 +1164,14 @@ github.com/tencentcloud/tencentcloud-sdk-go v3.0.83+incompatible/go.mod h1:0PfYo
|
|||
github.com/tencentcloud/tencentcloud-sdk-go v3.0.171+incompatible h1:K3fcS92NS8cRntIdu8Uqy2ZSePvX73nNhOkKuPGJLXQ=
|
||||
github.com/tencentcloud/tencentcloud-sdk-go v3.0.171+incompatible/go.mod h1:0PfYow01SHPMhKY31xa+EFz2RStxIqj6JFAJS+IkCi4=
|
||||
github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
|
||||
github.com/tidwall/pretty v1.0.1 h1:WE4RBSZ1x6McVVC8S/Md+Qse8YUv6HRObAx6ke00NY8=
|
||||
github.com/tidwall/pretty v1.0.1/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
|
||||
github.com/tklauser/go-sysconf v0.3.6 h1:oc1sJWvKkmvIxhDHeKWvZS4f6AW+YcoguSfRF2/Hmo4=
|
||||
github.com/tklauser/go-sysconf v0.3.6/go.mod h1:MkWzOF4RMCshBAMXuhXJs64Rte09mITnppBXY/rYEFI=
|
||||
github.com/tklauser/numcpus v0.2.2 h1:oyhllyrScuYI6g+h/zUvNXNp1wy7x8qQy3t/piefldA=
|
||||
github.com/tklauser/numcpus v0.2.2/go.mod h1:x3qojaO3uyYt0i56EW/VUYs7uBvdl2fkfZFu0T9wgjM=
|
||||
github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
|
||||
github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5 h1:LnC5Kc/wtumK+WB441p7ynQJzVuNRJiqddSIE3IlSEQ=
|
||||
github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U=
|
||||
github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926 h1:G3dpKMzFDjgEh2q1Z7zUUtKa8ViPtH+ocF0bE0g00O8=
|
||||
github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM=
|
||||
|
@ -1138,6 +1193,7 @@ github.com/xdg/stringprep v1.0.0 h1:d9X0esnoa3dFsV0FG35rAT0RIhYFlPq7MiP+DW89La0=
|
|||
github.com/xdg/stringprep v1.0.0/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y=
|
||||
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 h1:nIPpBwaJSVYIxUFsDv3M8ofmx9yWTog9BfvIu0q41lo=
|
||||
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8/go.mod h1:HUYIGzjTL3rfEspMxjDjgmT5uz5wzYJKVo23qUhYTos=
|
||||
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 h1:eY9dn8+vbi4tKz5Qo6v2eYzo7kUS51QINcR5jNpbZS8=
|
||||
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=
|
||||
github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q=
|
||||
github.com/yandex-cloud/go-genproto v0.0.0-20200722140432-762fe965ce77/go.mod h1:HEUYX/p8966tMUHHT+TsS0hF/Ca/NYwqprC5WXSDMfE=
|
||||
|
@ -1174,6 +1230,7 @@ go.opentelemetry.io/otel v0.20.0 h1:eaP0Fqu7SXHwvjiqDq83zImeehOHX8doTvU9AwXON8g=
|
|||
go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo=
|
||||
go.opentelemetry.io/otel/metric v0.20.0 h1:4kzhXFP+btKm4jwxpjIqjs41A7MakRFUS86bqLHTIw8=
|
||||
go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU=
|
||||
go.opentelemetry.io/otel/oteltest v0.20.0 h1:HiITxCawalo5vQzdHfKeZurV8x7ljcqAgiWzF6Vaeaw=
|
||||
go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw=
|
||||
go.opentelemetry.io/otel/sdk v0.20.0 h1:JsxtGXd06J8jrnya7fdI/U/MR6yXA5DtbZy+qoHQlr8=
|
||||
go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc=
|
||||
|
@ -1190,6 +1247,7 @@ go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/
|
|||
go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4=
|
||||
go.uber.org/multierr v1.5.0 h1:KCa4XfM8CWFCpxXRGok+Q0SS/0XBhMDbHHGABQLvD2A=
|
||||
go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU=
|
||||
go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee h1:0mgffUl7nfd+FpvXMVz4IDEaUSmT1ysygQC7qYo7sG4=
|
||||
go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA=
|
||||
go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
|
||||
go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM=
|
||||
|
@ -1387,6 +1445,7 @@ golang.org/x/sys v0.0.0-20200828194041-157a740278f4/go.mod h1:h1NjWce9XRLGQEsW7w
|
|||
golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210426230700-d19ff857e887 h1:dXfMednGJh/SUUFjTLsWJz3P+TQt9qnR11GgeI3vWKs=
|
||||
golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221 h1:/ZHdbVpdR/jk3g30/d4yUL0JU9kksj8+F/bnQUVLGDM=
|
||||
|
@ -1567,9 +1626,12 @@ gopkg.in/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d/go.mod h1:cuepJuh7vyXfUy
|
|||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU=
|
||||
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
|
||||
gopkg.in/errgo.v2 v2.1.0 h1:0vLT13EuvQ0hNvakwLuFZ/jYrLp5F3kcWHXdRggjCE8=
|
||||
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
|
||||
gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
|
||||
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
|
||||
gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o=
|
||||
gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo=
|
||||
|
@ -1591,6 +1653,7 @@ gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76
|
|||
gopkg.in/square/go-jose.v2 v2.4.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
|
||||
gopkg.in/square/go-jose.v2 v2.5.1 h1:7odma5RETjNHWJnR32wx8t+Io4djHE1PqxCFx3iiZ2w=
|
||||
gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
|
||||
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
|
||||
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
|
||||
gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=
|
||||
gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74=
|
||||
|
@ -1604,7 +1667,9 @@ gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU=
|
|||
gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=
|
||||
gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw=
|
||||
gotest.tools/v3 v3.0.2 h1:kG1BFyqVHuQoVQiR1bWGnfz/fmHvvuiSPIV7rvl360E=
|
||||
gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk=
|
||||
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
honnef.co/go/tools v0.0.0-20180920025451-e3ad64cb4ed3/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
|
|
|
@ -4,10 +4,10 @@ package cpu
|
|||
|
||||
import (
|
||||
"context"
|
||||
"os/exec"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/tklauser/go-sysconf"
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
|
@ -25,17 +25,10 @@ const (
|
|||
var ClocksPerSec = float64(128)
|
||||
|
||||
func init() {
|
||||
getconf, err := exec.LookPath("getconf")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
out, err := invoke.Command(getconf, "CLK_TCK")
|
||||
clkTck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
i, err := strconv.ParseFloat(strings.TrimSpace(string(out)), 64)
|
||||
if err == nil {
|
||||
ClocksPerSec = float64(i)
|
||||
}
|
||||
ClocksPerSec = float64(clkTck)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ package cpu
|
|||
#include <mach/mach_init.h>
|
||||
#include <mach/mach_host.h>
|
||||
#include <mach/host_info.h>
|
||||
#include <TargetConditionals.h>
|
||||
#if TARGET_OS_MAC
|
||||
#include <libproc.h>
|
||||
#endif
|
||||
|
|
|
@ -3,7 +3,6 @@ package cpu
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os/exec"
|
||||
"reflect"
|
||||
"regexp"
|
||||
"runtime"
|
||||
|
@ -12,6 +11,7 @@ import (
|
|||
"unsafe"
|
||||
|
||||
"github.com/shirou/gopsutil/internal/common"
|
||||
"github.com/tklauser/go-sysconf"
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
|
@ -25,17 +25,10 @@ var cpuTimesSize int
|
|||
var emptyTimes cpuTimes
|
||||
|
||||
func init() {
|
||||
getconf, err := exec.LookPath("getconf")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
out, err := invoke.Command(getconf, "CLK_TCK")
|
||||
clkTck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
i, err := strconv.ParseFloat(strings.TrimSpace(string(out)), 64)
|
||||
if err == nil {
|
||||
ClocksPerSec = float64(i)
|
||||
}
|
||||
ClocksPerSec = float64(clkTck)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,6 @@ package cpu
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os/exec"
|
||||
"reflect"
|
||||
"regexp"
|
||||
"runtime"
|
||||
|
@ -12,6 +11,7 @@ import (
|
|||
"unsafe"
|
||||
|
||||
"github.com/shirou/gopsutil/internal/common"
|
||||
"github.com/tklauser/go-sysconf"
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
|
@ -26,17 +26,10 @@ var cpuTimesSize int
|
|||
var emptyTimes cpuTimes
|
||||
|
||||
func init() {
|
||||
getconf, err := exec.LookPath("getconf")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
out, err := invoke.Command(getconf, "CLK_TCK")
|
||||
clkTck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
i, err := strconv.ParseFloat(strings.TrimSpace(string(out)), 64)
|
||||
if err == nil {
|
||||
ClocksPerSec = float64(i)
|
||||
}
|
||||
ClocksPerSec = float64(clkTck)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -6,28 +6,21 @@ import (
|
|||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/shirou/gopsutil/internal/common"
|
||||
"github.com/tklauser/go-sysconf"
|
||||
)
|
||||
|
||||
var ClocksPerSec = float64(100)
|
||||
|
||||
func init() {
|
||||
getconf, err := exec.LookPath("getconf")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
out, err := invoke.CommandWithContext(context.Background(), getconf, "CLK_TCK")
|
||||
clkTck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
i, err := strconv.ParseFloat(strings.TrimSpace(string(out)), 64)
|
||||
if err == nil {
|
||||
ClocksPerSec = i
|
||||
}
|
||||
ClocksPerSec = float64(clkTck)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -148,9 +141,44 @@ func InfoWithContext(ctx context.Context) ([]InfoStat, error) {
|
|||
c.CPU = int32(t)
|
||||
case "vendorId", "vendor_id":
|
||||
c.VendorID = value
|
||||
case "CPU implementer":
|
||||
if v, err := strconv.ParseUint(value, 0, 8); err == nil {
|
||||
switch v {
|
||||
case 0x41:
|
||||
c.VendorID = "ARM"
|
||||
case 0x42:
|
||||
c.VendorID = "Broadcom"
|
||||
case 0x43:
|
||||
c.VendorID = "Cavium"
|
||||
case 0x44:
|
||||
c.VendorID = "DEC"
|
||||
case 0x46:
|
||||
c.VendorID = "Fujitsu"
|
||||
case 0x48:
|
||||
c.VendorID = "HiSilicon"
|
||||
case 0x49:
|
||||
c.VendorID = "Infineon"
|
||||
case 0x4d:
|
||||
c.VendorID = "Motorola/Freescale"
|
||||
case 0x4e:
|
||||
c.VendorID = "NVIDIA"
|
||||
case 0x50:
|
||||
c.VendorID = "APM"
|
||||
case 0x51:
|
||||
c.VendorID = "Qualcomm"
|
||||
case 0x56:
|
||||
c.VendorID = "Marvell"
|
||||
case 0x61:
|
||||
c.VendorID = "Apple"
|
||||
case 0x69:
|
||||
c.VendorID = "Intel"
|
||||
case 0xc0:
|
||||
c.VendorID = "Ampere"
|
||||
}
|
||||
}
|
||||
case "cpu family":
|
||||
c.Family = value
|
||||
case "model":
|
||||
case "model", "CPU part":
|
||||
c.Model = value
|
||||
case "model name", "cpu":
|
||||
c.ModelName = value
|
||||
|
@ -160,7 +188,7 @@ func InfoWithContext(ctx context.Context) ([]InfoStat, error) {
|
|||
c.Family = "POWER"
|
||||
c.VendorID = "IBM"
|
||||
}
|
||||
case "stepping", "revision":
|
||||
case "stepping", "revision", "CPU revision":
|
||||
val := value
|
||||
|
||||
if key == "revision" {
|
||||
|
@ -293,8 +321,11 @@ func CountsWithContext(ctx context.Context, logical bool) (int, error) {
|
|||
if err == nil {
|
||||
for _, line := range lines {
|
||||
line = strings.ToLower(line)
|
||||
if strings.HasPrefix(line, "processor") {
|
||||
ret++
|
||||
if strings.HasPrefix(line, "processor") {
|
||||
_, err = strconv.Atoi(strings.TrimSpace(line[strings.IndexByte(line, ':')+1:]))
|
||||
if err == nil {
|
||||
ret++
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,13 +7,13 @@ import (
|
|||
"context"
|
||||
"encoding/binary"
|
||||
"fmt"
|
||||
"os/exec"
|
||||
"runtime"
|
||||
"strconv"
|
||||
"strings"
|
||||
"syscall"
|
||||
|
||||
"github.com/shirou/gopsutil/internal/common"
|
||||
"github.com/tklauser/go-sysconf"
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
|
@ -39,20 +39,12 @@ const (
|
|||
var ClocksPerSec = float64(128)
|
||||
|
||||
func init() {
|
||||
func() {
|
||||
getconf, err := exec.LookPath("getconf")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
out, err := invoke.Command(getconf, "CLK_TCK")
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
i, err := strconv.ParseFloat(strings.TrimSpace(string(out)), 64)
|
||||
if err == nil {
|
||||
ClocksPerSec = float64(i)
|
||||
}
|
||||
}
|
||||
}()
|
||||
clkTck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
ClocksPerSec = float64(clkTck)
|
||||
}
|
||||
|
||||
func() {
|
||||
v, err := unix.Sysctl("kern.osrelease") // can't reuse host.PlatformInformation because of circular import
|
||||
if err != nil {
|
||||
|
|
|
@ -10,22 +10,17 @@ import (
|
|||
"sort"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/tklauser/go-sysconf"
|
||||
)
|
||||
|
||||
var ClocksPerSec = float64(128)
|
||||
|
||||
func init() {
|
||||
getconf, err := exec.LookPath("getconf")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
out, err := invoke.Command(getconf, "CLK_TCK")
|
||||
clkTck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
// ignore errors
|
||||
if err == nil {
|
||||
i, err := strconv.ParseFloat(strings.TrimSpace(string(out)), 64)
|
||||
if err == nil {
|
||||
ClocksPerSec = float64(i)
|
||||
}
|
||||
ClocksPerSec = float64(clkTck)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -184,7 +179,7 @@ func parseISAInfo(cmdOutput string) ([]string, error) {
|
|||
return flags, nil
|
||||
}
|
||||
|
||||
var psrInfoMatch = regexp.MustCompile(`The physical processor has (?:([\d]+) virtual processor \(([\d]+)\)|([\d]+) cores and ([\d]+) virtual processors[^\n]+)\n(?:\s+ The core has.+\n)*\s+.+ \((\w+) ([\S]+) family (.+) model (.+) step (.+) clock (.+) MHz\)\n[\s]*(.*)`)
|
||||
var psrInfoMatch = regexp.MustCompile(`The physical processor has (?:([\d]+) virtual processors? \(([\d-]+)\)|([\d]+) cores and ([\d]+) virtual processors[^\n]+)\n(?:\s+ The core has.+\n)*\s+.+ \((\w+) ([\S]+) family (.+) model (.+) step (.+) clock (.+) MHz\)\n[\s]*(.*)`)
|
||||
|
||||
const (
|
||||
psrNumCoresOffset = 1
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
// +build openbsd
|
||||
// +build arm64
|
||||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs disk/types_openbsd.go
|
||||
|
||||
package disk
|
||||
|
||||
const (
|
||||
DEVSTAT_NO_DATA = 0x00
|
||||
DEVSTAT_READ = 0x01
|
||||
DEVSTAT_WRITE = 0x02
|
||||
DEVSTAT_FREE = 0x03
|
||||
)
|
||||
|
||||
const (
|
||||
sizeOfDiskstats = 0x70
|
||||
)
|
||||
|
||||
type Diskstats struct {
|
||||
Name [16]int8
|
||||
Busy int32
|
||||
Rxfer uint64
|
||||
Wxfer uint64
|
||||
Seek uint64
|
||||
Rbytes uint64
|
||||
Wbytes uint64
|
||||
Attachtime Timeval
|
||||
Timestamp Timeval
|
||||
Time Timeval
|
||||
}
|
||||
type Timeval struct {
|
||||
Sec int64
|
||||
Usec int64
|
||||
}
|
||||
|
||||
type Diskstat struct{}
|
||||
type Bintime struct{}
|
|
@ -281,7 +281,7 @@ func PlatformInformationWithContext(ctx context.Context) (platform string, famil
|
|||
family = "fedora"
|
||||
case "oracle", "centos", "redhat", "scientific", "enterpriseenterprise", "amazon", "xenserver", "cloudlinux", "ibm_powerkvm":
|
||||
family = "rhel"
|
||||
case "suse", "opensuse", "sles":
|
||||
case "suse", "opensuse", "opensuse-leap", "opensuse-tumbleweed", "opensuse-tumbleweed-kubic", "sles", "sled", "caasp":
|
||||
family = "suse"
|
||||
case "gentoo":
|
||||
family = "gentoo"
|
||||
|
|
|
@ -78,7 +78,7 @@ func UsersWithContext(ctx context.Context) ([]UserStat, error) {
|
|||
var u Utmp
|
||||
br := bytes.NewReader(b)
|
||||
err := binary.Read(br, binary.LittleEndian, &u)
|
||||
if err != nil || u.Time == 0 {
|
||||
if err != nil || u.Time == 0 || u.Name[0] == 0 {
|
||||
continue
|
||||
}
|
||||
user := UserStat{
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
// +build openbsd
|
||||
// +build arm64
|
||||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs host/types_openbsd.go
|
||||
|
||||
package host
|
||||
|
||||
const (
|
||||
sizeofPtr = 0x8
|
||||
sizeofShort = 0x2
|
||||
sizeofInt = 0x4
|
||||
sizeofLong = 0x8
|
||||
sizeofLongLong = 0x8
|
||||
sizeOfUtmp = 0x130
|
||||
)
|
||||
|
||||
type (
|
||||
_C_short int16
|
||||
_C_int int32
|
||||
_C_long int64
|
||||
_C_long_long int64
|
||||
)
|
||||
|
||||
type Utmp struct {
|
||||
Line [8]int8
|
||||
Name [32]int8
|
||||
Host [256]int8
|
||||
Time int64
|
||||
}
|
||||
type Timeval struct {
|
||||
Sec int64
|
||||
Usec int64
|
||||
}
|
|
@ -352,6 +352,16 @@ func HostDev(combineWith ...string) string {
|
|||
return GetEnv("HOST_DEV", "/dev", combineWith...)
|
||||
}
|
||||
|
||||
// MockEnv set environment variable and return revert function.
|
||||
// MockEnv should be used testing only.
|
||||
func MockEnv(key string, value string) func() {
|
||||
original := os.Getenv(key)
|
||||
os.Setenv(key, value)
|
||||
return func() {
|
||||
os.Setenv(key, original)
|
||||
}
|
||||
}
|
||||
|
||||
// getSysctrlEnv sets LC_ALL=C in a list of env vars for use when running
|
||||
// sysctl commands (see DoSysctrl).
|
||||
func getSysctrlEnv(env []string) []string {
|
||||
|
|
|
@ -71,7 +71,7 @@ var (
|
|||
ProcNtWow64ReadVirtualMemory64 = ModNt.NewProc("NtWow64ReadVirtualMemory64")
|
||||
|
||||
PdhOpenQuery = ModPdh.NewProc("PdhOpenQuery")
|
||||
PdhAddCounter = ModPdh.NewProc("PdhAddCounterW")
|
||||
PdhAddEnglishCounterW = ModPdh.NewProc("PdhAddEnglishCounterW")
|
||||
PdhCollectQueryData = ModPdh.NewProc("PdhCollectQueryData")
|
||||
PdhGetFormattedCounterValue = ModPdh.NewProc("PdhGetFormattedCounterValue")
|
||||
PdhCloseQuery = ModPdh.NewProc("PdhCloseQuery")
|
||||
|
@ -113,10 +113,10 @@ func CreateQuery() (windows.Handle, error) {
|
|||
return query, nil
|
||||
}
|
||||
|
||||
// CreateCounter with a PdhAddCounter call
|
||||
// CreateCounter with a PdhAddEnglishCounterW call
|
||||
func CreateCounter(query windows.Handle, pname, cname string) (*CounterInfo, error) {
|
||||
var counter windows.Handle
|
||||
r, _, err := PdhAddCounter.Call(
|
||||
r, _, err := PdhAddEnglishCounterW.Call(
|
||||
uintptr(query),
|
||||
uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(cname))),
|
||||
0,
|
||||
|
@ -159,7 +159,7 @@ func NewWin32PerformanceCounter(postName, counterName string) (*Win32Performance
|
|||
PostName: postName,
|
||||
CounterName: counterName,
|
||||
}
|
||||
r, _, err := PdhAddCounter.Call(
|
||||
r, _, err := PdhAddEnglishCounterW.Call(
|
||||
uintptr(counter.Query),
|
||||
uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(counter.CounterName))),
|
||||
0,
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
// +build openbsd
|
||||
// +build arm64
|
||||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs mem/types_openbsd.go
|
||||
|
||||
package mem
|
||||
|
||||
const (
|
||||
CTLVfs = 10
|
||||
VfsGeneric = 0
|
||||
VfsBcacheStat = 3
|
||||
)
|
||||
|
||||
const (
|
||||
sizeOfBcachestats = 0x90
|
||||
)
|
||||
|
||||
type Bcachestats struct {
|
||||
Numbufs int64
|
||||
Numbufpages int64
|
||||
Numdirtypages int64
|
||||
Numcleanpages int64
|
||||
Pendingwrites int64
|
||||
Pendingreads int64
|
||||
Numwrites int64
|
||||
Numreads int64
|
||||
Cachehits int64
|
||||
Busymapped int64
|
||||
Dmapages int64
|
||||
Highpages int64
|
||||
Delwribufs int64
|
||||
Kvaslots int64
|
||||
Avail int64
|
||||
Highflips int64
|
||||
Highflops int64
|
||||
Dmaflips int64
|
||||
}
|
|
@ -476,7 +476,8 @@ func (p *Process) PageFaults() (*PageFaultsStat, error) {
|
|||
return p.PageFaultsWithContext(context.Background())
|
||||
}
|
||||
|
||||
// Children returns a slice of Process of the process.
|
||||
// Children returns the children of the process represented as a slice
|
||||
// of pointers to Process type.
|
||||
func (p *Process) Children() ([]*Process, error) {
|
||||
return p.ChildrenWithContext(context.Background())
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ type _Ctype_struct___0 struct {
|
|||
func pidsWithContext(ctx context.Context) ([]int32, error) {
|
||||
var ret []int32
|
||||
|
||||
pids, err := callPsWithContext(ctx, "pid", 0, false)
|
||||
pids, err := callPsWithContext(ctx, "pid", 0, false, false)
|
||||
if err != nil {
|
||||
return ret, err
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ func pidsWithContext(ctx context.Context) ([]int32, error) {
|
|||
}
|
||||
|
||||
func (p *Process) PpidWithContext(ctx context.Context) (int32, error) {
|
||||
r, err := callPsWithContext(ctx, "ppid", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "ppid", p.Pid, false, false)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
@ -76,16 +76,16 @@ func (p *Process) NameWithContext(ctx context.Context) (string, error) {
|
|||
name := common.IntToString(k.Proc.P_comm[:])
|
||||
|
||||
if len(name) >= 15 {
|
||||
cmdlineSlice, err := p.CmdlineSliceWithContext(ctx)
|
||||
cmdName, err := p.cmdNameWithContext(ctx)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
if len(cmdlineSlice) > 0 {
|
||||
extendedName := filepath.Base(cmdlineSlice[0])
|
||||
if len(cmdName) > 0 {
|
||||
extendedName := filepath.Base(cmdName[0])
|
||||
if strings.HasPrefix(extendedName, p.name) {
|
||||
name = extendedName
|
||||
} else {
|
||||
name = cmdlineSlice[0]
|
||||
name = cmdName[0]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -94,20 +94,29 @@ func (p *Process) NameWithContext(ctx context.Context) (string, error) {
|
|||
}
|
||||
|
||||
func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) {
|
||||
r, err := callPsWithContext(ctx, "command", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "command", p.Pid, false, false)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return strings.Join(r[0], " "), err
|
||||
}
|
||||
|
||||
// cmdNameWithContext returns the command name (including spaces) without any arguments
|
||||
func (p *Process) cmdNameWithContext(ctx context.Context) ([]string, error) {
|
||||
r, err := callPsWithContext(ctx, "command", p.Pid, false, true)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return r[0], err
|
||||
}
|
||||
|
||||
// CmdlineSliceWithContext returns the command line arguments of the process as a slice with each
|
||||
// element being an argument. Because of current deficiencies in the way that the command
|
||||
// line arguments are found, single arguments that have spaces in the will actually be
|
||||
// reported as two separate items. In order to do something better CGO would be needed
|
||||
// to use the native darwin functions.
|
||||
func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) {
|
||||
r, err := callPsWithContext(ctx, "command", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "command", p.Pid, false, false)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -115,7 +124,7 @@ func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error)
|
|||
}
|
||||
|
||||
func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) {
|
||||
r, err := callPsWithContext(ctx, "etime", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "etime", p.Pid, false, false)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
@ -163,7 +172,7 @@ func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) {
|
|||
}
|
||||
|
||||
func (p *Process) StatusWithContext(ctx context.Context) (string, error) {
|
||||
r, err := callPsWithContext(ctx, "state", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "state", p.Pid, false, false)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
@ -255,7 +264,7 @@ func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, e
|
|||
}
|
||||
|
||||
func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) {
|
||||
r, err := callPsWithContext(ctx, "utime,stime", p.Pid, true)
|
||||
r, err := callPsWithContext(ctx, "utime,stime", p.Pid, true, false)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
@ -309,7 +318,7 @@ func convertCPUTimes(s string) (ret float64, err error) {
|
|||
}
|
||||
|
||||
func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) {
|
||||
r, err := callPsWithContext(ctx, "utime,stime", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "utime,stime", p.Pid, false, false)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -333,7 +342,7 @@ func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error)
|
|||
}
|
||||
|
||||
func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) {
|
||||
r, err := callPsWithContext(ctx, "rss,vsize,pagein", p.Pid, false)
|
||||
r, err := callPsWithContext(ctx, "rss,vsize,pagein", p.Pid, false, false)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -419,9 +428,9 @@ func (p *Process) getKProc() (*KinfoProc, error) {
|
|||
|
||||
// call ps command.
|
||||
// Return value deletes Header line(you must not input wrong arg).
|
||||
// And splited by Space. Caller have responsibility to manage.
|
||||
// And split by space. Caller have responsibility to manage.
|
||||
// If passed arg pid is 0, get information from all process.
|
||||
func callPsWithContext(ctx context.Context, arg string, pid int32, threadOption bool) ([][]string, error) {
|
||||
func callPsWithContext(ctx context.Context, arg string, pid int32, threadOption bool, nameOption bool) ([][]string, error) {
|
||||
bin, err := exec.LookPath("ps")
|
||||
if err != nil {
|
||||
return [][]string{}, err
|
||||
|
@ -435,6 +444,10 @@ func callPsWithContext(ctx context.Context, arg string, pid int32, threadOption
|
|||
} else {
|
||||
cmd = []string{"-x", "-o", arg, "-p", strconv.Itoa(int(pid))}
|
||||
}
|
||||
|
||||
if nameOption {
|
||||
cmd = append(cmd, "-c")
|
||||
}
|
||||
out, err := invoke.CommandWithContext(ctx, bin, cmd...)
|
||||
if err != nil {
|
||||
return [][]string{}, err
|
||||
|
@ -443,13 +456,19 @@ func callPsWithContext(ctx context.Context, arg string, pid int32, threadOption
|
|||
|
||||
var ret [][]string
|
||||
for _, l := range lines[1:] {
|
||||
|
||||
var lr []string
|
||||
for _, r := range strings.Split(l, " ") {
|
||||
if r == "" {
|
||||
continue
|
||||
if nameOption {
|
||||
lr = append(lr, l)
|
||||
} else {
|
||||
for _, r := range strings.Split(l, " ") {
|
||||
if r == "" {
|
||||
continue
|
||||
}
|
||||
lr = append(lr, strings.TrimSpace(r))
|
||||
}
|
||||
lr = append(lr, strings.TrimSpace(r))
|
||||
}
|
||||
|
||||
if len(lr) != 0 {
|
||||
ret = append(ret, lr)
|
||||
}
|
||||
|
|
|
@ -120,22 +120,25 @@ type Sigacts struct{}
|
|||
|
||||
type ExternProc struct {
|
||||
P_un [16]byte
|
||||
P_vmspace *Vmspace
|
||||
P_sigacts *Sigacts
|
||||
P_vmspace uint64
|
||||
P_sigacts uint64
|
||||
Pad_cgo_0 [3]byte
|
||||
P_flag int32
|
||||
P_stat int8
|
||||
P_pid int32
|
||||
P_oppid int32
|
||||
P_dupfd int32
|
||||
User_stack *int8
|
||||
Exit_thread *byte
|
||||
Pad_cgo_1 [4]byte
|
||||
User_stack uint64
|
||||
Exit_thread uint64
|
||||
P_debugger int32
|
||||
Sigwait int32
|
||||
P_estcpu uint32
|
||||
P_cpticks int32
|
||||
P_pctcpu uint32
|
||||
P_wchan *byte
|
||||
P_wmesg *int8
|
||||
Pad_cgo_2 [4]byte
|
||||
P_wchan uint64
|
||||
P_wmesg uint64
|
||||
P_swtime uint32
|
||||
P_slptime uint32
|
||||
P_realtimer Itimerval
|
||||
|
@ -144,9 +147,11 @@ type ExternProc struct {
|
|||
P_sticks uint64
|
||||
P_iticks uint64
|
||||
P_traceflag int32
|
||||
P_tracep *Vnode
|
||||
Pad_cgo_3 [4]byte
|
||||
P_tracep uint64
|
||||
P_siglist int32
|
||||
P_textvp *Vnode
|
||||
Pad_cgo_4 [4]byte
|
||||
P_textvp uint64
|
||||
P_holdcnt int32
|
||||
P_sigmask uint32
|
||||
P_sigignore uint32
|
||||
|
@ -155,11 +160,13 @@ type ExternProc struct {
|
|||
P_usrpri uint8
|
||||
P_nice int8
|
||||
P_comm [17]int8
|
||||
P_pgrp *Pgrp
|
||||
P_addr *UserStruct
|
||||
Pad_cgo_5 [4]byte
|
||||
P_pgrp uint64
|
||||
P_addr uint64
|
||||
P_xstat uint16
|
||||
P_acflag uint16
|
||||
P_ru *Rusage
|
||||
Pad_cgo_6 [4]byte
|
||||
P_ru uint64
|
||||
}
|
||||
|
||||
type Itimerval struct {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// +build !darwin,!linux,!freebsd,!openbsd,!windows
|
||||
// +build !darwin,!linux,!freebsd,!openbsd,!windows,!solaris
|
||||
|
||||
package process
|
||||
|
||||
|
|
|
@ -821,8 +821,12 @@ func (p *Process) fillFromStatusWithContext(ctx context.Context) error {
|
|||
}
|
||||
}
|
||||
}
|
||||
// Ensure we have a copy and not reference into slice
|
||||
p.name = string([]byte(p.name))
|
||||
case "State":
|
||||
p.status = value[0:1]
|
||||
// Ensure we have a copy and not reference into slice
|
||||
p.status = string([]byte(p.status))
|
||||
case "PPid", "Ppid":
|
||||
pval, err := strconv.ParseInt(value, 10, 32)
|
||||
if err != nil {
|
||||
|
@ -931,30 +935,45 @@ func (p *Process) fillFromStatusWithContext(ctx context.Context) error {
|
|||
}
|
||||
p.memInfo.Locked = v * 1024
|
||||
case "SigPnd":
|
||||
if len(value) > 16 {
|
||||
value = value[len(value)-16:]
|
||||
}
|
||||
v, err := strconv.ParseUint(value, 16, 64)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
p.sigInfo.PendingThread = v
|
||||
case "ShdPnd":
|
||||
if len(value) > 16 {
|
||||
value = value[len(value)-16:]
|
||||
}
|
||||
v, err := strconv.ParseUint(value, 16, 64)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
p.sigInfo.PendingProcess = v
|
||||
case "SigBlk":
|
||||
if len(value) > 16 {
|
||||
value = value[len(value)-16:]
|
||||
}
|
||||
v, err := strconv.ParseUint(value, 16, 64)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
p.sigInfo.Blocked = v
|
||||
case "SigIgn":
|
||||
if len(value) > 16 {
|
||||
value = value[len(value)-16:]
|
||||
}
|
||||
v, err := strconv.ParseUint(value, 16, 64)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
p.sigInfo.Ignored = v
|
||||
case "SigCgt":
|
||||
if len(value) > 16 {
|
||||
value = value[len(value)-16:]
|
||||
}
|
||||
v, err := strconv.ParseUint(value, 16, 64)
|
||||
if err != nil {
|
||||
return err
|
||||
|
@ -980,28 +999,24 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui
|
|||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
fields := strings.Fields(string(contents))
|
||||
// Indexing from one, as described in `man proc` about the file /proc/[pid]/stat
|
||||
fields := splitProcStat(contents)
|
||||
|
||||
i := 1
|
||||
for !strings.HasSuffix(fields[i], ")") {
|
||||
i++
|
||||
}
|
||||
|
||||
terminal, err := strconv.ParseUint(fields[i+5], 10, 64)
|
||||
terminal, err := strconv.ParseUint(fields[7], 10, 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
|
||||
ppid, err := strconv.ParseInt(fields[i+2], 10, 32)
|
||||
ppid, err := strconv.ParseInt(fields[4], 10, 32)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
utime, err := strconv.ParseFloat(fields[i+12], 64)
|
||||
utime, err := strconv.ParseFloat(fields[14], 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
|
||||
stime, err := strconv.ParseFloat(fields[i+13], 64)
|
||||
stime, err := strconv.ParseFloat(fields[15], 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
|
@ -1009,7 +1024,7 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui
|
|||
// There is no such thing as iotime in stat file. As an approximation, we
|
||||
// will use delayacct_blkio_ticks (aggregated block I/O delays, as per Linux
|
||||
// docs). Note: I am assuming at least Linux 2.6.18
|
||||
iotime, err := strconv.ParseFloat(fields[i+40], 64)
|
||||
iotime, err := strconv.ParseFloat(fields[42], 64)
|
||||
if err != nil {
|
||||
iotime = 0 // Ancient linux version, most likely
|
||||
}
|
||||
|
@ -1022,14 +1037,14 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui
|
|||
}
|
||||
|
||||
bootTime, _ := common.BootTimeWithContext(ctx)
|
||||
t, err := strconv.ParseUint(fields[i+20], 10, 64)
|
||||
t, err := strconv.ParseUint(fields[22], 10, 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
ctime := (t / uint64(ClockTicks)) + uint64(bootTime)
|
||||
createTime := int64(ctime * 1000)
|
||||
|
||||
rtpriority, err := strconv.ParseInt(fields[i+16], 10, 32)
|
||||
rtpriority, err := strconv.ParseInt(fields[18], 10, 32)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
|
@ -1044,19 +1059,19 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui
|
|||
snice, _ := unix.Getpriority(PrioProcess, int(pid))
|
||||
nice := int32(snice) // FIXME: is this true?
|
||||
|
||||
minFault, err := strconv.ParseUint(fields[i+8], 10, 64)
|
||||
minFault, err := strconv.ParseUint(fields[10], 10, 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
cMinFault, err := strconv.ParseUint(fields[i+9], 10, 64)
|
||||
cMinFault, err := strconv.ParseUint(fields[11], 10, 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
majFault, err := strconv.ParseUint(fields[i+10], 10, 64)
|
||||
majFault, err := strconv.ParseUint(fields[12], 10, 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
cMajFault, err := strconv.ParseUint(fields[i+11], 10, 64)
|
||||
cMajFault, err := strconv.ParseUint(fields[13], 10, 64)
|
||||
if err != nil {
|
||||
return 0, 0, nil, 0, 0, 0, nil, err
|
||||
}
|
||||
|
@ -1122,3 +1137,16 @@ func readPidsFromDir(path string) ([]int32, error) {
|
|||
|
||||
return ret, nil
|
||||
}
|
||||
|
||||
func splitProcStat(content []byte) []string {
|
||||
nameStart := bytes.IndexByte(content, '(')
|
||||
nameEnd := bytes.LastIndexByte(content, ')')
|
||||
restFields := strings.Fields(string(content[nameEnd+2:])) // +2 skip ') '
|
||||
name := content[nameStart+1 : nameEnd]
|
||||
pid := strings.TrimSpace(string(content[:nameStart]))
|
||||
fields := make([]string, 3, len(restFields)+3)
|
||||
fields[1] = string(pid)
|
||||
fields[2] = string(name)
|
||||
fields = append(fields, restFields...)
|
||||
return fields
|
||||
}
|
||||
|
|
202
vendor/github.com/shirou/gopsutil/process/process_openbsd_arm64.go
generated
vendored
Normal file
202
vendor/github.com/shirou/gopsutil/process/process_openbsd_arm64.go
generated
vendored
Normal file
|
@ -0,0 +1,202 @@
|
|||
// +build openbsd
|
||||
// +build arm64
|
||||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs process/types_openbsd.go
|
||||
|
||||
package process
|
||||
|
||||
const (
|
||||
CTLKern = 1
|
||||
KernProc = 66
|
||||
KernProcAll = 0
|
||||
KernProcPID = 1
|
||||
KernProcProc = 8
|
||||
KernProcPathname = 12
|
||||
KernProcArgs = 55
|
||||
KernProcArgv = 1
|
||||
KernProcEnv = 3
|
||||
)
|
||||
|
||||
const (
|
||||
ArgMax = 256 * 1024
|
||||
)
|
||||
|
||||
const (
|
||||
sizeofPtr = 0x8
|
||||
sizeofShort = 0x2
|
||||
sizeofInt = 0x4
|
||||
sizeofLong = 0x8
|
||||
sizeofLongLong = 0x8
|
||||
)
|
||||
|
||||
const (
|
||||
sizeOfKinfoVmentry = 0x50
|
||||
sizeOfKinfoProc = 0x270
|
||||
)
|
||||
|
||||
const (
|
||||
SIDL = 1
|
||||
SRUN = 2
|
||||
SSLEEP = 3
|
||||
SSTOP = 4
|
||||
SZOMB = 5
|
||||
SDEAD = 6
|
||||
SONPROC = 7
|
||||
)
|
||||
|
||||
type (
|
||||
_C_short int16
|
||||
_C_int int32
|
||||
_C_long int64
|
||||
_C_long_long int64
|
||||
)
|
||||
|
||||
type Timespec struct {
|
||||
Sec int64
|
||||
Nsec int64
|
||||
}
|
||||
|
||||
type Timeval struct {
|
||||
Sec int64
|
||||
Usec int64
|
||||
}
|
||||
|
||||
type Rusage struct {
|
||||
Utime Timeval
|
||||
Stime Timeval
|
||||
Maxrss int64
|
||||
Ixrss int64
|
||||
Idrss int64
|
||||
Isrss int64
|
||||
Minflt int64
|
||||
Majflt int64
|
||||
Nswap int64
|
||||
Inblock int64
|
||||
Oublock int64
|
||||
Msgsnd int64
|
||||
Msgrcv int64
|
||||
Nsignals int64
|
||||
Nvcsw int64
|
||||
Nivcsw int64
|
||||
}
|
||||
|
||||
type Rlimit struct {
|
||||
Cur uint64
|
||||
Max uint64
|
||||
}
|
||||
|
||||
type KinfoProc struct {
|
||||
Forw uint64
|
||||
Back uint64
|
||||
Paddr uint64
|
||||
Addr uint64
|
||||
Fd uint64
|
||||
Stats uint64
|
||||
Limit uint64
|
||||
Vmspace uint64
|
||||
Sigacts uint64
|
||||
Sess uint64
|
||||
Tsess uint64
|
||||
Ru uint64
|
||||
Eflag int32
|
||||
Exitsig int32
|
||||
Flag int32
|
||||
Pid int32
|
||||
Ppid int32
|
||||
Sid int32
|
||||
X_pgid int32
|
||||
Tpgid int32
|
||||
Uid uint32
|
||||
Ruid uint32
|
||||
Gid uint32
|
||||
Rgid uint32
|
||||
Groups [16]uint32
|
||||
Ngroups int16
|
||||
Jobc int16
|
||||
Tdev uint32
|
||||
Estcpu uint32
|
||||
Rtime_sec uint32
|
||||
Rtime_usec uint32
|
||||
Cpticks int32
|
||||
Pctcpu uint32
|
||||
Swtime uint32
|
||||
Slptime uint32
|
||||
Schedflags int32
|
||||
Uticks uint64
|
||||
Sticks uint64
|
||||
Iticks uint64
|
||||
Tracep uint64
|
||||
Traceflag int32
|
||||
Holdcnt int32
|
||||
Siglist int32
|
||||
Sigmask uint32
|
||||
Sigignore uint32
|
||||
Sigcatch uint32
|
||||
Stat int8
|
||||
Priority uint8
|
||||
Usrpri uint8
|
||||
Nice uint8
|
||||
Xstat uint16
|
||||
Acflag uint16
|
||||
Comm [24]int8
|
||||
Wmesg [8]uint8
|
||||
Wchan uint64
|
||||
Login [32]uint8
|
||||
Vm_rssize int32
|
||||
Vm_tsize int32
|
||||
Vm_dsize int32
|
||||
Vm_ssize int32
|
||||
Uvalid int64
|
||||
Ustart_sec uint64
|
||||
Ustart_usec uint32
|
||||
Uutime_sec uint32
|
||||
Uutime_usec uint32
|
||||
Ustime_sec uint32
|
||||
Ustime_usec uint32
|
||||
Uru_maxrss uint64
|
||||
Uru_ixrss uint64
|
||||
Uru_idrss uint64
|
||||
Uru_isrss uint64
|
||||
Uru_minflt uint64
|
||||
Uru_majflt uint64
|
||||
Uru_nswap uint64
|
||||
Uru_inblock uint64
|
||||
Uru_oublock uint64
|
||||
Uru_msgsnd uint64
|
||||
Uru_msgrcv uint64
|
||||
Uru_nsignals uint64
|
||||
Uru_nvcsw uint64
|
||||
Uru_nivcsw uint64
|
||||
Uctime_sec uint32
|
||||
Uctime_usec uint32
|
||||
Psflags uint32
|
||||
Spare int32
|
||||
Svuid uint32
|
||||
Svgid uint32
|
||||
Emul [8]uint8
|
||||
Rlim_rss_cur uint64
|
||||
Cpuid uint64
|
||||
Vm_map_size uint64
|
||||
Tid int32
|
||||
Rtableid uint32
|
||||
Pledge uint64
|
||||
}
|
||||
|
||||
type Priority struct{}
|
||||
|
||||
type KinfoVmentry struct {
|
||||
Start uint64
|
||||
End uint64
|
||||
Guard uint64
|
||||
Fspace uint64
|
||||
Fspace_augment uint64
|
||||
Offset uint64
|
||||
Wired_count int32
|
||||
Etype int32
|
||||
Protection int32
|
||||
Max_protection int32
|
||||
Advice int32
|
||||
Inheritance int32
|
||||
Flags uint8
|
||||
Pad_cgo_0 [7]byte
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
// +build linux freebsd openbsd darwin
|
||||
// +build linux freebsd openbsd darwin solaris
|
||||
|
||||
package process
|
||||
|
||||
|
@ -71,6 +71,30 @@ func getTerminalMap() (map[uint64]string, error) {
|
|||
return ret, nil
|
||||
}
|
||||
|
||||
// isMount is a port of python's os.path.ismount()
|
||||
// https://github.com/python/cpython/blob/08ff4369afca84587b1c82034af4e9f64caddbf2/Lib/posixpath.py#L186-L216
|
||||
// https://docs.python.org/3/library/os.path.html#os.path.ismount
|
||||
func isMount(path string) bool {
|
||||
// Check symlinkness with os.Lstat; unix.DT_LNK is not portable
|
||||
fileInfo, err := os.Lstat(path)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
if fileInfo.Mode() & os.ModeSymlink != 0 {
|
||||
return false
|
||||
}
|
||||
var stat1 unix.Stat_t
|
||||
if err := unix.Lstat(path, &stat1); err != nil {
|
||||
return false
|
||||
}
|
||||
parent := filepath.Join(path, "..")
|
||||
var stat2 unix.Stat_t
|
||||
if err := unix.Lstat(parent, &stat2); err != nil {
|
||||
return false
|
||||
}
|
||||
return stat1.Dev != stat2.Dev || stat1.Ino == stat2.Ino
|
||||
}
|
||||
|
||||
func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) {
|
||||
if pid <= 0 {
|
||||
return false, fmt.Errorf("invalid pid %v", pid)
|
||||
|
@ -80,10 +104,7 @@ func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) {
|
|||
return false, err
|
||||
}
|
||||
|
||||
if _, err := os.Stat(common.HostProc()); err == nil { //Means that proc filesystem exist
|
||||
// Checking PID existence based on existence of /<HOST_PROC>/proc/<PID> folder
|
||||
// This covers the case when running inside container with a different process namespace (by default)
|
||||
|
||||
if isMount(common.HostProc()) { // if /<HOST_PROC>/proc exists and is mounted, check if /<HOST_PROC>/proc/<PID> folder exists
|
||||
_, err := os.Stat(common.HostProc(strconv.Itoa(int(pid))))
|
||||
if os.IsNotExist(err) {
|
||||
return false, nil
|
||||
|
@ -91,8 +112,7 @@ func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) {
|
|||
return err == nil, err
|
||||
}
|
||||
|
||||
//'/proc' filesystem is not exist, checking of PID existence is done via signalling the process
|
||||
//Make sense only if we run in the same process namespace
|
||||
// procfs does not exist or is not mounted, check PID existence by signalling the pid
|
||||
err = proc.Signal(syscall.Signal(0))
|
||||
if err == nil {
|
||||
return true, nil
|
||||
|
|
|
@ -0,0 +1,309 @@
|
|||
package process
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/shirou/gopsutil/cpu"
|
||||
"github.com/shirou/gopsutil/internal/common"
|
||||
"github.com/shirou/gopsutil/net"
|
||||
)
|
||||
|
||||
type MemoryMapsStat struct {
|
||||
Path string `json:"path"`
|
||||
Rss uint64 `json:"rss"`
|
||||
Size uint64 `json:"size"`
|
||||
Pss uint64 `json:"pss"`
|
||||
SharedClean uint64 `json:"sharedClean"`
|
||||
SharedDirty uint64 `json:"sharedDirty"`
|
||||
PrivateClean uint64 `json:"privateClean"`
|
||||
PrivateDirty uint64 `json:"privateDirty"`
|
||||
Referenced uint64 `json:"referenced"`
|
||||
Anonymous uint64 `json:"anonymous"`
|
||||
Swap uint64 `json:"swap"`
|
||||
}
|
||||
|
||||
type MemoryInfoExStat struct {
|
||||
}
|
||||
|
||||
func pidsWithContext(ctx context.Context) ([]int32, error) {
|
||||
return readPidsFromDir(common.HostProc())
|
||||
}
|
||||
|
||||
func ProcessesWithContext(ctx context.Context) ([]*Process, error) {
|
||||
out := []*Process{}
|
||||
|
||||
pids, err := PidsWithContext(ctx)
|
||||
if err != nil {
|
||||
return out, err
|
||||
}
|
||||
|
||||
for _, pid := range pids {
|
||||
p, err := NewProcessWithContext(ctx, pid)
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
out = append(out, p)
|
||||
}
|
||||
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (p *Process) PpidWithContext(ctx context.Context) (int32, error) {
|
||||
return 0, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) NameWithContext(ctx context.Context) (string, error) {
|
||||
return "", common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) TgidWithContext(ctx context.Context) (int32, error) {
|
||||
return 0, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) ExeWithContext(ctx context.Context) (string, error) {
|
||||
exe, err := p.fillFromPathAOutWithContext(ctx)
|
||||
if os.IsNotExist(err) {
|
||||
exe, err = p.fillFromExecnameWithContext(ctx)
|
||||
}
|
||||
return exe, err
|
||||
}
|
||||
|
||||
func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) {
|
||||
return p.fillFromCmdlineWithContext(ctx)
|
||||
}
|
||||
|
||||
func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) {
|
||||
return p.fillSliceFromCmdlineWithContext(ctx)
|
||||
}
|
||||
|
||||
func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) {
|
||||
return 0, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) CwdWithContext(ctx context.Context) (string, error) {
|
||||
return p.fillFromPathCwdWithContext(ctx)
|
||||
}
|
||||
|
||||
func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) StatusWithContext(ctx context.Context) (string, error) {
|
||||
return "", common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) {
|
||||
return false, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) TerminalWithContext(ctx context.Context) (string, error) {
|
||||
return "", common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) NiceWithContext(ctx context.Context) (int32, error) {
|
||||
return 0, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) {
|
||||
return 0, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) {
|
||||
_, fnames, err := p.fillFromfdListWithContext(ctx)
|
||||
return int32(len(fnames)), err
|
||||
}
|
||||
|
||||
func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) {
|
||||
return 0, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) {
|
||||
return nil, common.ErrNotImplementedError
|
||||
}
|
||||
|
||||
/**
|
||||
** Internal functions
|
||||
**/
|
||||
|
||||
func (p *Process) fillFromfdListWithContext(ctx context.Context) (string, []string, error) {
|
||||
pid := p.Pid
|
||||
statPath := common.HostProc(strconv.Itoa(int(pid)), "fd")
|
||||
d, err := os.Open(statPath)
|
||||
if err != nil {
|
||||
return statPath, []string{}, err
|
||||
}
|
||||
defer d.Close()
|
||||
fnames, err := d.Readdirnames(-1)
|
||||
return statPath, fnames, err
|
||||
}
|
||||
|
||||
func (p *Process) fillFromPathCwdWithContext(ctx context.Context) (string, error) {
|
||||
pid := p.Pid
|
||||
cwdPath := common.HostProc(strconv.Itoa(int(pid)), "path", "cwd")
|
||||
cwd, err := os.Readlink(cwdPath)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return cwd, nil
|
||||
}
|
||||
|
||||
func (p *Process) fillFromPathAOutWithContext(ctx context.Context) (string, error) {
|
||||
pid := p.Pid
|
||||
cwdPath := common.HostProc(strconv.Itoa(int(pid)), "path", "a.out")
|
||||
exe, err := os.Readlink(cwdPath)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return exe, nil
|
||||
}
|
||||
|
||||
func (p *Process) fillFromExecnameWithContext(ctx context.Context) (string, error) {
|
||||
pid := p.Pid
|
||||
execNamePath := common.HostProc(strconv.Itoa(int(pid)), "execname")
|
||||
exe, err := ioutil.ReadFile(execNamePath)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return string(exe), nil
|
||||
}
|
||||
|
||||
func (p *Process) fillFromCmdlineWithContext(ctx context.Context) (string, error) {
|
||||
pid := p.Pid
|
||||
cmdPath := common.HostProc(strconv.Itoa(int(pid)), "cmdline")
|
||||
cmdline, err := ioutil.ReadFile(cmdPath)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
ret := strings.FieldsFunc(string(cmdline), func(r rune) bool {
|
||||
if r == '\u0000' {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
})
|
||||
|
||||
return strings.Join(ret, " "), nil
|
||||
}
|
||||
|
||||
func (p *Process) fillSliceFromCmdlineWithContext(ctx context.Context) ([]string, error) {
|
||||
pid := p.Pid
|
||||
cmdPath := common.HostProc(strconv.Itoa(int(pid)), "cmdline")
|
||||
cmdline, err := ioutil.ReadFile(cmdPath)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if len(cmdline) == 0 {
|
||||
return nil, nil
|
||||
}
|
||||
if cmdline[len(cmdline)-1] == 0 {
|
||||
cmdline = cmdline[:len(cmdline)-1]
|
||||
}
|
||||
parts := bytes.Split(cmdline, []byte{0})
|
||||
var strParts []string
|
||||
for _, p := range parts {
|
||||
strParts = append(strParts, string(p))
|
||||
}
|
||||
|
||||
return strParts, nil
|
||||
}
|
||||
|
||||
func readPidsFromDir(path string) ([]int32, error) {
|
||||
var ret []int32
|
||||
|
||||
d, err := os.Open(path)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer d.Close()
|
||||
|
||||
fnames, err := d.Readdirnames(-1)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for _, fname := range fnames {
|
||||
pid, err := strconv.ParseInt(fname, 10, 32)
|
||||
if err != nil {
|
||||
// if not numeric name, just skip
|
||||
continue
|
||||
}
|
||||
ret = append(ret, int32(pid))
|
||||
}
|
||||
|
||||
return ret, nil
|
||||
}
|
|
@ -38,6 +38,8 @@ var (
|
|||
processorArchitecture uint
|
||||
)
|
||||
|
||||
const processQueryInformation = windows.PROCESS_QUERY_LIMITED_INFORMATION | windows.PROCESS_QUERY_INFORMATION // WinXP doesn't know PROCESS_QUERY_LIMITED_INFORMATION
|
||||
|
||||
type SystemProcessInformation struct {
|
||||
NextEntryOffset uint64
|
||||
NumberOfThreads uint64
|
||||
|
@ -219,7 +221,7 @@ func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) {
|
|||
return false, err
|
||||
}
|
||||
const STILL_ACTIVE = 259 // https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getexitcodeprocess
|
||||
h, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pid))
|
||||
h, err := windows.OpenProcess(processQueryInformation, false, uint32(pid))
|
||||
if err == windows.ERROR_ACCESS_DENIED {
|
||||
return true, nil
|
||||
}
|
||||
|
@ -273,7 +275,7 @@ func (p *Process) TgidWithContext(ctx context.Context) (int32, error) {
|
|||
}
|
||||
|
||||
func (p *Process) ExeWithContext(ctx context.Context) (string, error) {
|
||||
c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(p.Pid))
|
||||
c, err := windows.OpenProcess(processQueryInformation, false, uint32(p.Pid))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
@ -347,7 +349,7 @@ func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) {
|
|||
|
||||
func (p *Process) UsernameWithContext(ctx context.Context) (string, error) {
|
||||
pid := p.Pid
|
||||
c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pid))
|
||||
c, err := windows.OpenProcess(processQueryInformation, false, uint32(pid))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
@ -397,7 +399,7 @@ var priorityClasses = map[int]int32{
|
|||
}
|
||||
|
||||
func (p *Process) NiceWithContext(ctx context.Context) (int32, error) {
|
||||
c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(p.Pid))
|
||||
c, err := windows.OpenProcess(processQueryInformation, false, uint32(p.Pid))
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
@ -426,7 +428,7 @@ func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) (
|
|||
}
|
||||
|
||||
func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) {
|
||||
c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(p.Pid))
|
||||
c, err := windows.OpenProcess(processQueryInformation, false, uint32(p.Pid))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -680,7 +682,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) {
|
|||
func getRusage(pid int32) (*windows.Rusage, error) {
|
||||
var CPU windows.Rusage
|
||||
|
||||
c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pid))
|
||||
c, err := windows.OpenProcess(processQueryInformation, false, uint32(pid))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -695,7 +697,7 @@ func getRusage(pid int32) (*windows.Rusage, error) {
|
|||
|
||||
func getMemoryInfo(pid int32) (PROCESS_MEMORY_COUNTERS, error) {
|
||||
var mem PROCESS_MEMORY_COUNTERS
|
||||
c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pid))
|
||||
c, err := windows.OpenProcess(processQueryInformation, false, uint32(pid))
|
||||
if err != nil {
|
||||
return mem, err
|
||||
}
|
||||
|
@ -729,7 +731,7 @@ type SYSTEM_TIMES struct {
|
|||
func getProcessCPUTimes(pid int32) (SYSTEM_TIMES, error) {
|
||||
var times SYSTEM_TIMES
|
||||
|
||||
h, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pid))
|
||||
h, err := windows.OpenProcess(processQueryInformation, false, uint32(pid))
|
||||
if err != nil {
|
||||
return times, err
|
||||
}
|
||||
|
@ -770,7 +772,7 @@ func is32BitProcess(procHandle syscall.Handle) bool {
|
|||
}
|
||||
|
||||
func getProcessCommandLine(pid int32) (string, error) {
|
||||
h, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION|windows.PROCESS_VM_READ, false, uint32(pid))
|
||||
h, err := windows.OpenProcess(processQueryInformation|windows.PROCESS_VM_READ, false, uint32(pid))
|
||||
if err == windows.ERROR_ACCESS_DENIED || err == windows.ERROR_INVALID_PARAMETER {
|
||||
return "", nil
|
||||
}
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
env:
|
||||
CIRRUS_CLONE_DEPTH: 1
|
||||
|
||||
freebsd_12_task:
|
||||
freebsd_instance:
|
||||
image_family: freebsd-12-2
|
||||
install_script: |
|
||||
pkg install -y git go
|
||||
GOBIN=$PWD/bin go get golang.org/dl/go1.16.2
|
||||
bin/go1.16.2 download
|
||||
build_script: bin/go1.16.2 build -v ./...
|
||||
test_script: bin/go1.16.2 test -race ./...
|
|
@ -0,0 +1 @@
|
|||
_obj/
|
|
@ -0,0 +1,29 @@
|
|||
BSD 3-Clause License
|
||||
|
||||
Copyright (c) 2018-2021, Tobias Klauser
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
* Neither the name of the copyright holder nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@ -0,0 +1,47 @@
|
|||
# go-sysconf
|
||||
|
||||
[![Go Reference](https://pkg.go.dev/badge/github.com/tklauser/go-sysconf.svg)](https://pkg.go.dev/github.com/tklauser/go-sysconf)
|
||||
[![GitHub Action Status](https://github.com/tklauser/go-sysconf/workflows/Tests/badge.svg)](https://github.com/tklauser/go-sysconf/actions?query=workflow%3ATests)
|
||||
[![Go Report Card](https://goreportcard.com/badge/github.com/tklauser/go-sysconf)](https://goreportcard.com/report/github.com/tklauser/go-sysconf)
|
||||
|
||||
`sysconf` for Go, without using cgo or external binaries (e.g. getconf).
|
||||
|
||||
Supported operating systems: Linux, Darwin, DragonflyBSD, FreeBSD, NetBSD, OpenBSD, Solaris.
|
||||
|
||||
All POSIX.1 and POSIX.2 variables are supported, see [References](#references) for a complete list.
|
||||
|
||||
Additionally, the following non-standard variables are supported on some operating systems:
|
||||
|
||||
| Variable | Supported on |
|
||||
|---|---|
|
||||
| `SC_PHYS_PAGES` | Linux, Darwin, FreeBSD, NetBSD, OpenBSD, Solaris |
|
||||
| `SC_AVPHYS_PAGES` | Linux, OpenBSD, Solaris |
|
||||
| `SC_NPROCESSORS_CONF` | Linux, Darwin, FreeBSD, NetBSD, OpenBSD, Solaris |
|
||||
| `SC_NPROCESSORS_ONLN` | Linux, Darwin, FreeBSD, NetBSD, OpenBSD, Solaris |
|
||||
| `SC_UIO_MAXIOV` | Linux |
|
||||
|
||||
## Usage
|
||||
|
||||
```Go
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/tklauser/go-sysconf"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// get clock ticks, this will return the same as C.sysconf(C._SC_CLK_TCK)
|
||||
clktck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK)
|
||||
if err == nil {
|
||||
fmt.Printf("SC_CLK_TCK: %v\n", clktck)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## References
|
||||
|
||||
* [POSIX documenation for `sysconf`](http://pubs.opengroup.org/onlinepubs/9699919799/functions/sysconf.html)
|
||||
* [Linux manpage for `sysconf(3)`](http://man7.org/linux/man-pages/man3/sysconf.3.html)
|
||||
* [glibc constants for `sysconf` parameters](https://www.gnu.org/software/libc/manual/html_node/Constants-for-Sysconf.html)
|
|
@ -0,0 +1,8 @@
|
|||
module github.com/tklauser/go-sysconf
|
||||
|
||||
go 1.13
|
||||
|
||||
require (
|
||||
github.com/tklauser/numcpus v0.2.2
|
||||
golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa
|
||||
)
|
|
@ -0,0 +1,4 @@
|
|||
github.com/tklauser/numcpus v0.2.2 h1:oyhllyrScuYI6g+h/zUvNXNp1wy7x8qQy3t/piefldA=
|
||||
github.com/tklauser/numcpus v0.2.2/go.mod h1:x3qojaO3uyYt0i56EW/VUYs7uBvdl2fkfZFu0T9wgjM=
|
||||
golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa h1:ZYxPR6aca/uhfRJyaOAtflSHjJYiktO7QnJC5ut7iY4=
|
||||
golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
@ -0,0 +1,21 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// Package sysconf implements the sysconf(3) function and provides the
|
||||
// associated SC_* constants to query system configuration values.
|
||||
package sysconf
|
||||
|
||||
import "errors"
|
||||
|
||||
//go:generate go run mksysconf.go
|
||||
|
||||
var errInvalid = errors.New("invalid parameter value")
|
||||
|
||||
// Sysconf returns the value of a sysconf(3) runtime system parameter.
|
||||
// The name parameter should be a SC_* constant define in this package. The
|
||||
// implementation is GOOS-specific and certain SC_* constants might not be
|
||||
// defined for all GOOSes.
|
||||
func Sysconf(name int) (int64, error) {
|
||||
return sysconf(name)
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build darwin || dragonfly || freebsd || netbsd || openbsd
|
||||
// +build darwin dragonfly freebsd netbsd openbsd
|
||||
|
||||
package sysconf
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
func pathconf(path string, name int) int64 {
|
||||
if val, err := unix.Pathconf(path, name); err == nil {
|
||||
return int64(val)
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
||||
func sysctl32(name string) int64 {
|
||||
if val, err := unix.SysctlUint32(name); err == nil {
|
||||
return int64(val)
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
||||
func sysctl64(name string) int64 {
|
||||
if val, err := unix.SysctlUint64(name); err == nil {
|
||||
return int64(val)
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
||||
func yesno(val int64) int64 {
|
||||
if val == 0 {
|
||||
return -1
|
||||
}
|
||||
return val
|
||||
}
|
|
@ -0,0 +1,267 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import (
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
const (
|
||||
_HOST_NAME_MAX = _MAXHOSTNAMELEN - 1
|
||||
_LOGIN_NAME_MAX = _MAXLOGNAME
|
||||
_SYMLOOP_MAX = _MAXSYMLINKS
|
||||
)
|
||||
|
||||
// sysconf implements sysconf(3) as in the Darwin libc, version 1244.30.3
|
||||
// (derived from the FreeBSD libc).
|
||||
func sysconf(name int) (int64, error) {
|
||||
switch name {
|
||||
case SC_AIO_LISTIO_MAX:
|
||||
fallthrough
|
||||
case SC_AIO_MAX:
|
||||
return sysctl32("kern.aiomax"), nil
|
||||
case SC_AIO_PRIO_DELTA_MAX:
|
||||
return -1, nil
|
||||
case SC_ARG_MAX:
|
||||
return sysctl32("kern.argmax"), nil
|
||||
case SC_ATEXIT_MAX:
|
||||
return _INT_MAX, nil
|
||||
case SC_CHILD_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_CLK_TCK:
|
||||
return _CLK_TCK, nil
|
||||
case SC_DELAYTIMER_MAX:
|
||||
return -1, nil
|
||||
case SC_GETGR_R_SIZE_MAX:
|
||||
return 4096, nil
|
||||
case SC_GETPW_R_SIZE_MAX:
|
||||
return 4096, nil
|
||||
case SC_IOV_MAX:
|
||||
return _IOV_MAX, nil
|
||||
case SC_MQ_OPEN_MAX:
|
||||
return -1, nil
|
||||
case SC_MQ_PRIO_MAX:
|
||||
return -1, nil
|
||||
case SC_NGROUPS_MAX:
|
||||
return sysctl32("kern.ngroups"), nil
|
||||
case SC_OPEN_MAX, SC_STREAM_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_RTSIG_MAX:
|
||||
return -1, nil
|
||||
case SC_SEM_NSEMS_MAX:
|
||||
return sysctl32("kern.sysv.semmns"), nil
|
||||
case SC_SEM_VALUE_MAX:
|
||||
return _POSIX_SEM_VALUE_MAX, nil
|
||||
case SC_SIGQUEUE_MAX:
|
||||
return -1, nil
|
||||
case SC_THREAD_DESTRUCTOR_ITERATIONS:
|
||||
return _PTHREAD_DESTRUCTOR_ITERATIONS, nil
|
||||
case SC_THREAD_KEYS_MAX:
|
||||
return _PTHREAD_KEYS_MAX, nil
|
||||
case SC_THREAD_PRIO_INHERIT:
|
||||
return _POSIX_THREAD_PRIO_INHERIT, nil
|
||||
case SC_THREAD_PRIO_PROTECT:
|
||||
return _POSIX_THREAD_PRIO_PROTECT, nil
|
||||
case SC_THREAD_STACK_MIN:
|
||||
return _PTHREAD_STACK_MIN, nil
|
||||
case SC_THREAD_THREADS_MAX:
|
||||
return -1, nil
|
||||
case SC_TIMER_MAX:
|
||||
return -1, nil
|
||||
case SC_TTY_NAME_MAX:
|
||||
// should be _PATH_DEV instead of "/"
|
||||
return pathconf("/", _PC_NAME_MAX), nil
|
||||
case SC_TZNAME_MAX:
|
||||
return pathconf(_PATH_ZONEINFO, _PC_NAME_MAX), nil
|
||||
|
||||
case SC_IPV6:
|
||||
if _POSIX_IPV6 == 0 {
|
||||
fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0)
|
||||
if err == nil && fd >= 0 {
|
||||
unix.Close(fd)
|
||||
return int64(200112), nil
|
||||
}
|
||||
return 0, nil
|
||||
}
|
||||
return _POSIX_IPV6, nil
|
||||
case SC_MESSAGE_PASSING:
|
||||
if _POSIX_MESSAGE_PASSING == 0 {
|
||||
return yesno(sysctl32("p1003_1b.message_passing")), nil
|
||||
}
|
||||
return _POSIX_MESSAGE_PASSING, nil
|
||||
case SC_PRIORITIZED_IO:
|
||||
if _POSIX_PRIORITIZED_IO == 0 {
|
||||
return yesno(sysctl32("p1003_1b.prioritized_io")), nil
|
||||
}
|
||||
return _POSIX_PRIORITIZED_IO, nil
|
||||
case SC_PRIORITY_SCHEDULING:
|
||||
if _POSIX_PRIORITY_SCHEDULING == 0 {
|
||||
return yesno(sysctl32("p1003_1b.priority_scheduling")), nil
|
||||
}
|
||||
return _POSIX_PRIORITY_SCHEDULING, nil
|
||||
case SC_REALTIME_SIGNALS:
|
||||
if _POSIX_REALTIME_SIGNALS == 0 {
|
||||
return yesno(sysctl32("p1003_1b.realtime_signals")), nil
|
||||
}
|
||||
return _POSIX_REALTIME_SIGNALS, nil
|
||||
case SC_SAVED_IDS:
|
||||
return yesno(sysctl32("kern.saved_ids")), nil
|
||||
case SC_SEMAPHORES:
|
||||
if _POSIX_SEMAPHORES == 0 {
|
||||
return yesno(sysctl32("p1003_1b.semaphores")), nil
|
||||
}
|
||||
return _POSIX_SEMAPHORES, nil
|
||||
case SC_SPAWN:
|
||||
return _POSIX_SPAWN, nil
|
||||
case SC_SPIN_LOCKS:
|
||||
return _POSIX_SPIN_LOCKS, nil
|
||||
case SC_SPORADIC_SERVER:
|
||||
return _POSIX_SPORADIC_SERVER, nil
|
||||
case SC_SS_REPL_MAX:
|
||||
return _POSIX_SS_REPL_MAX, nil
|
||||
case SC_SYNCHRONIZED_IO:
|
||||
if _POSIX_SYNCHRONIZED_IO == 0 {
|
||||
return yesno(sysctl32("p1003_1b.synchronized_io")), nil
|
||||
}
|
||||
return _POSIX_SYNCHRONIZED_IO, nil
|
||||
case SC_THREAD_ATTR_STACKADDR:
|
||||
return _POSIX_THREAD_ATTR_STACKADDR, nil
|
||||
case SC_THREAD_ATTR_STACKSIZE:
|
||||
return _POSIX_THREAD_ATTR_STACKSIZE, nil
|
||||
case SC_THREAD_CPUTIME:
|
||||
return _POSIX_THREAD_CPUTIME, nil
|
||||
case SC_THREAD_PRIORITY_SCHEDULING:
|
||||
return _POSIX_THREAD_PRIORITY_SCHEDULING, nil
|
||||
case SC_THREAD_PROCESS_SHARED:
|
||||
return _POSIX_THREAD_PROCESS_SHARED, nil
|
||||
case SC_THREAD_SAFE_FUNCTIONS:
|
||||
return _POSIX_THREAD_SAFE_FUNCTIONS, nil
|
||||
case SC_THREAD_SPORADIC_SERVER:
|
||||
return _POSIX_THREAD_SPORADIC_SERVER, nil
|
||||
case SC_TIMERS:
|
||||
if _POSIX_TIMERS == 0 {
|
||||
return yesno(sysctl32("p1003_1b.timers")), nil
|
||||
}
|
||||
return _POSIX_TIMERS, nil
|
||||
case SC_TRACE:
|
||||
return _POSIX_TRACE, nil
|
||||
case SC_TRACE_EVENT_FILTER:
|
||||
return _POSIX_TRACE_EVENT_FILTER, nil
|
||||
case SC_TRACE_EVENT_NAME_MAX:
|
||||
return _POSIX_TRACE_EVENT_NAME_MAX, nil
|
||||
case SC_TRACE_INHERIT:
|
||||
return _POSIX_TRACE_INHERIT, nil
|
||||
case SC_TRACE_LOG:
|
||||
return _POSIX_TRACE_LOG, nil
|
||||
case SC_TRACE_NAME_MAX:
|
||||
return _POSIX_TRACE_NAME_MAX, nil
|
||||
case SC_TRACE_SYS_MAX:
|
||||
return _POSIX_TRACE_SYS_MAX, nil
|
||||
case SC_TRACE_USER_EVENT_MAX:
|
||||
return _POSIX_TRACE_USER_EVENT_MAX, nil
|
||||
case SC_TYPED_MEMORY_OBJECTS:
|
||||
return _POSIX_TYPED_MEMORY_OBJECTS, nil
|
||||
case SC_VERSION:
|
||||
// TODO(tk): darwin libc uses sysctl(CTL_KERN, KERN_POSIX1)
|
||||
return _POSIX_VERSION, nil
|
||||
|
||||
case SC_V6_ILP32_OFF32:
|
||||
if _V6_ILP32_OFF32 == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofInt == unix.SizeofLong &&
|
||||
unix.SizeofLong == unix.SizeofPtr &&
|
||||
unix.SizeofPtr == sizeofOffT {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _V6_ILP32_OFF32, nil
|
||||
case SC_V6_ILP32_OFFBIG:
|
||||
if _V6_ILP32_OFFBIG == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofInt == unix.SizeofLong &&
|
||||
unix.SizeofLong == unix.SizeofPtr &&
|
||||
sizeofOffT*_CHAR_BIT >= 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _V6_ILP32_OFFBIG, nil
|
||||
case SC_V6_LP64_OFF64:
|
||||
if _V6_LP64_OFF64 == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT == 64 &&
|
||||
unix.SizeofLong == unix.SizeofPtr &&
|
||||
unix.SizeofPtr == sizeofOffT {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _V6_LP64_OFF64, nil
|
||||
case SC_V6_LPBIG_OFFBIG:
|
||||
if _V6_LPBIG_OFFBIG == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT >= 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT >= 64 &&
|
||||
unix.SizeofPtr*_CHAR_BIT >= 64 &&
|
||||
sizeofOffT*_CHAR_BIT >= 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _V6_LPBIG_OFFBIG, nil
|
||||
|
||||
case SC_2_CHAR_TERM:
|
||||
return _POSIX2_CHAR_TERM, nil
|
||||
case SC_2_PBS,
|
||||
SC_2_PBS_ACCOUNTING,
|
||||
SC_2_PBS_CHECKPOINT,
|
||||
SC_2_PBS_LOCATE,
|
||||
SC_2_PBS_MESSAGE,
|
||||
SC_2_PBS_TRACK:
|
||||
return _POSIX2_PBS, nil
|
||||
case SC_2_UPE:
|
||||
return _POSIX2_UPE, nil
|
||||
|
||||
case SC_XOPEN_CRYPT:
|
||||
return _XOPEN_CRYPT, nil
|
||||
case SC_XOPEN_ENH_I18N:
|
||||
return _XOPEN_ENH_I18N, nil
|
||||
case SC_XOPEN_REALTIME:
|
||||
return _XOPEN_REALTIME, nil
|
||||
case SC_XOPEN_REALTIME_THREADS:
|
||||
return _XOPEN_REALTIME_THREADS, nil
|
||||
case SC_XOPEN_SHM:
|
||||
return _XOPEN_SHM, nil
|
||||
case SC_XOPEN_STREAMS:
|
||||
return -1, nil
|
||||
case SC_XOPEN_UNIX:
|
||||
return _XOPEN_UNIX, nil
|
||||
case SC_XOPEN_VERSION:
|
||||
return _XOPEN_VERSION, nil
|
||||
case SC_XOPEN_XCU_VERSION:
|
||||
return _XOPEN_XCU_VERSION, nil
|
||||
|
||||
case SC_PHYS_PAGES:
|
||||
return sysctl64("hw.memsize") / int64(unix.Getpagesize()), nil
|
||||
case SC_NPROCESSORS_CONF:
|
||||
fallthrough
|
||||
case SC_NPROCESSORS_ONLN:
|
||||
return sysctl32("hw.ncpu"), nil
|
||||
}
|
||||
|
||||
return sysconfGeneric(name)
|
||||
}
|
|
@ -0,0 +1,220 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
const (
|
||||
_HOST_NAME_MAX = _MAXHOSTNAMELEN - 1
|
||||
_LOGIN_NAME_MAX = _MAXLOGNAME
|
||||
_SYMLOOP_MAX = _MAXSYMLINKS
|
||||
)
|
||||
|
||||
// sysconf implements sysconf(3) as in the FreeBSD 12 libc.
|
||||
func sysconf(name int) (int64, error) {
|
||||
switch name {
|
||||
case SC_AIO_LISTIO_MAX:
|
||||
return sysctl32("p1003_1b.aio_listio_max"), nil
|
||||
case SC_AIO_MAX:
|
||||
return sysctl32("p1003_1b.aio_max"), nil
|
||||
case SC_AIO_PRIO_DELTA_MAX:
|
||||
return sysctl32("p1003_1b.aio_prio_delta_max"), nil
|
||||
case SC_ARG_MAX:
|
||||
return sysctl32("kern.argmax"), nil
|
||||
case SC_ATEXIT_MAX:
|
||||
return _ATEXIT_SIZE, nil
|
||||
case SC_CHILD_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return rlim.Cur, nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_CLK_TCK:
|
||||
return _CLK_TCK, nil
|
||||
case SC_DELAYTIMER_MAX:
|
||||
return yesno(sysctl32("p1003_1b.delaytimer_max")), nil
|
||||
case SC_GETGR_R_SIZE_MAX, SC_GETPW_R_SIZE_MAX:
|
||||
return -1, nil
|
||||
case SC_IOV_MAX:
|
||||
return sysctl32("kern.iov_max"), nil
|
||||
case SC_MQ_OPEN_MAX:
|
||||
return sysctl32("kern.mqueue.mq_open_max"), nil
|
||||
case SC_MQ_PRIO_MAX:
|
||||
return sysctl32("kern.mqueue.mq_prio_max"), nil
|
||||
case SC_NGROUPS_MAX:
|
||||
return sysctl32("kern.ngroups"), nil
|
||||
case SC_OPEN_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return rlim.Cur, nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_RTSIG_MAX:
|
||||
return yesno(sysctl32("p1003_1b.rtsig_max")), nil
|
||||
case SC_SEM_NSEMS_MAX:
|
||||
return -1, nil
|
||||
case SC_SEM_VALUE_MAX:
|
||||
return -1, nil
|
||||
case SC_SIGQUEUE_MAX:
|
||||
return yesno(sysctl32("p1003_1b.sigqueue_max")), nil
|
||||
case SC_STREAM_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return rlim.Cur, nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_THREAD_DESTRUCTOR_ITERATIONS:
|
||||
return _PTHREAD_DESTRUCTOR_ITERATIONS, nil
|
||||
case SC_THREAD_KEYS_MAX:
|
||||
return _PTHREAD_KEYS_MAX, nil
|
||||
case SC_THREAD_PRIO_INHERIT:
|
||||
return _POSIX_THREAD_PRIO_INHERIT, nil
|
||||
case SC_THREAD_PRIO_PROTECT:
|
||||
return _POSIX_THREAD_PRIO_PROTECT, nil
|
||||
case SC_THREAD_STACK_MIN:
|
||||
return _PTHREAD_STACK_MIN, nil
|
||||
case SC_THREAD_THREADS_MAX:
|
||||
return -1, nil
|
||||
case SC_TIMER_MAX:
|
||||
return yesno(sysctl32("p1003_1b.timer_max")), nil
|
||||
case SC_TTY_NAME_MAX:
|
||||
return pathconf(_PATH_DEV, _PC_NAME_MAX), nil
|
||||
case SC_TZNAME_MAX:
|
||||
return pathconf(_PATH_ZONEINFO, _PC_NAME_MAX), nil
|
||||
|
||||
case SC_ASYNCHRONOUS_IO:
|
||||
if _POSIX_ASYNCHRONOUS_IO == 0 {
|
||||
return sysctl64("p1003_1b.asynchronous_io"), nil
|
||||
}
|
||||
return _POSIX_ASYNCHRONOUS_IO, nil
|
||||
case SC_IPV6:
|
||||
if _POSIX_IPV6 == 0 {
|
||||
fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0)
|
||||
if err == nil && fd >= 0 {
|
||||
unix.Close(fd)
|
||||
return int64(200112), nil
|
||||
}
|
||||
return 0, nil
|
||||
}
|
||||
return _POSIX_IPV6, nil
|
||||
case SC_MESSAGE_PASSING:
|
||||
if _POSIX_MESSAGE_PASSING == 0 {
|
||||
return yesno(sysctl32("p1003_1b.message_passing")), nil
|
||||
}
|
||||
return _POSIX_MESSAGE_PASSING, nil
|
||||
case SC_PRIORITIZED_IO:
|
||||
if _POSIX_PRIORITIZED_IO == 0 {
|
||||
return yesno(sysctl32("p1003_1b.prioritized_io")), nil
|
||||
}
|
||||
return _POSIX_PRIORITIZED_IO, nil
|
||||
case SC_PRIORITY_SCHEDULING:
|
||||
if _POSIX_PRIORITY_SCHEDULING == 0 {
|
||||
return yesno(sysctl32("p1003_1b.priority_scheduling")), nil
|
||||
}
|
||||
return _POSIX_PRIORITY_SCHEDULING, nil
|
||||
case SC_REALTIME_SIGNALS:
|
||||
if _POSIX_REALTIME_SIGNALS == 0 {
|
||||
return yesno(sysctl32("p1003_1b.realtime_signals")), nil
|
||||
}
|
||||
return _POSIX_REALTIME_SIGNALS, nil
|
||||
case SC_SAVED_IDS:
|
||||
return yesno(sysctl32("kern.saved_ids")), nil
|
||||
case SC_SEMAPHORES:
|
||||
if _POSIX_SEMAPHORES == 0 {
|
||||
return yesno(sysctl32("p1003_1b.semaphores")), nil
|
||||
}
|
||||
return _POSIX_SEMAPHORES, nil
|
||||
case SC_SPAWN:
|
||||
return _POSIX_SPAWN, nil
|
||||
case SC_SPIN_LOCKS:
|
||||
return _POSIX_SPIN_LOCKS, nil
|
||||
case SC_SPORADIC_SERVER:
|
||||
return _POSIX_SPORADIC_SERVER, nil
|
||||
case SC_SYNCHRONIZED_IO:
|
||||
if _POSIX_SYNCHRONIZED_IO == 0 {
|
||||
return yesno(sysctl32("p1003_1b.synchronized_io")), nil
|
||||
}
|
||||
return _POSIX_SYNCHRONIZED_IO, nil
|
||||
case SC_THREAD_ATTR_STACKADDR:
|
||||
return _POSIX_THREAD_ATTR_STACKADDR, nil
|
||||
case SC_THREAD_ATTR_STACKSIZE:
|
||||
return _POSIX_THREAD_ATTR_STACKSIZE, nil
|
||||
case SC_THREAD_CPUTIME:
|
||||
return _POSIX_THREAD_CPUTIME, nil
|
||||
case SC_THREAD_PRIORITY_SCHEDULING:
|
||||
return _POSIX_THREAD_PRIORITY_SCHEDULING, nil
|
||||
case SC_THREAD_PROCESS_SHARED:
|
||||
return _POSIX_THREAD_PROCESS_SHARED, nil
|
||||
case SC_THREAD_SAFE_FUNCTIONS:
|
||||
return _POSIX_THREAD_SAFE_FUNCTIONS, nil
|
||||
case SC_THREAD_SPORADIC_SERVER:
|
||||
return _POSIX_THREAD_SPORADIC_SERVER, nil
|
||||
case SC_TIMERS:
|
||||
if _POSIX_TIMERS == 0 {
|
||||
return yesno(sysctl32("p1003_1b.timers")), nil
|
||||
}
|
||||
return _POSIX_TIMERS, nil
|
||||
case SC_TRACE:
|
||||
return _POSIX_TRACE, nil
|
||||
case SC_TYPED_MEMORY_OBJECTS:
|
||||
return _POSIX_TYPED_MEMORY_OBJECTS, nil
|
||||
case SC_VERSION:
|
||||
// TODO(tk): FreeBSD libc uses sysctl(CTL_KERN, KERN_POSIX1)
|
||||
return _POSIX_VERSION, nil
|
||||
|
||||
/* TODO(tk): these need GOARCH-dependent integer size checks
|
||||
case SC_V6_ILP32_OFF32:
|
||||
return _V6_ILP32_OFF32, nil
|
||||
case SC_V6_ILP32_OFFBIG:
|
||||
return _V6_ILP32_OFFBIG, nil
|
||||
case SC_V6_LP64_OFF64:
|
||||
return _V6_LP64_OFF64, nil
|
||||
case SC_V6_LPBIG_OFFBIG:
|
||||
return _V6_LPBIG_OFFBIG, nil
|
||||
*/
|
||||
|
||||
case SC_2_CHAR_TERM:
|
||||
return _POSIX2_CHAR_TERM, nil
|
||||
case SC_2_PBS,
|
||||
SC_2_PBS_ACCOUNTING,
|
||||
SC_2_PBS_CHECKPOINT,
|
||||
SC_2_PBS_LOCATE,
|
||||
SC_2_PBS_MESSAGE,
|
||||
SC_2_PBS_TRACK:
|
||||
return _POSIX2_PBS, nil
|
||||
case SC_2_UPE:
|
||||
return _POSIX2_UPE, nil
|
||||
|
||||
case SC_XOPEN_CRYPT:
|
||||
return _XOPEN_CRYPT, nil
|
||||
case SC_XOPEN_ENH_I18N:
|
||||
return _XOPEN_ENH_I18N, nil
|
||||
case SC_XOPEN_REALTIME:
|
||||
return _XOPEN_REALTIME, nil
|
||||
case SC_XOPEN_REALTIME_THREADS:
|
||||
return _XOPEN_REALTIME_THREADS, nil
|
||||
case SC_XOPEN_SHM:
|
||||
return _XOPEN_SHM, nil
|
||||
case SC_XOPEN_STREAMS:
|
||||
return -1, nil
|
||||
case SC_XOPEN_UNIX:
|
||||
return _XOPEN_UNIX, nil
|
||||
|
||||
case SC_PHYS_PAGES:
|
||||
return sysctl64("hw.availpages"), nil
|
||||
case SC_NPROCESSORS_CONF:
|
||||
fallthrough
|
||||
case SC_NPROCESSORS_ONLN:
|
||||
return sysctl32("hw.ncpu"), nil
|
||||
}
|
||||
|
||||
return sysconfGeneric(name)
|
||||
}
|
|
@ -0,0 +1,226 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
const (
|
||||
_HOST_NAME_MAX = _MAXHOSTNAMELEN - 1
|
||||
_LOGIN_NAME_MAX = _MAXLOGNAME
|
||||
_SYMLOOP_MAX = _MAXSYMLINKS
|
||||
)
|
||||
|
||||
// sysconf implements sysconf(3) as in the FreeBSD 12 libc.
|
||||
func sysconf(name int) (int64, error) {
|
||||
switch name {
|
||||
case SC_AIO_LISTIO_MAX:
|
||||
return sysctl32("p1003_1b.aio_listio_max"), nil
|
||||
case SC_AIO_MAX:
|
||||
return sysctl32("p1003_1b.aio_max"), nil
|
||||
case SC_AIO_PRIO_DELTA_MAX:
|
||||
return sysctl32("p1003_1b.aio_prio_delta_max"), nil
|
||||
case SC_ARG_MAX:
|
||||
return sysctl32("kern.argmax"), nil
|
||||
case SC_ATEXIT_MAX:
|
||||
return _ATEXIT_SIZE, nil
|
||||
case SC_CHILD_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return rlim.Cur, nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_CLK_TCK:
|
||||
return _CLK_TCK, nil
|
||||
case SC_DELAYTIMER_MAX:
|
||||
return sysctl32("p1003_1b.delaytimer_max"), nil
|
||||
case SC_GETGR_R_SIZE_MAX, SC_GETPW_R_SIZE_MAX:
|
||||
return -1, nil
|
||||
case SC_IOV_MAX:
|
||||
return sysctl32("kern.iov_max"), nil
|
||||
case SC_MQ_OPEN_MAX:
|
||||
return yesno(sysctl32("p1003_1b.mq_open_max")), nil
|
||||
case SC_MQ_PRIO_MAX:
|
||||
return _MQ_PRIO_MAX, nil
|
||||
case SC_NGROUPS_MAX:
|
||||
return sysctl32("kern.ngroups"), nil
|
||||
case SC_OPEN_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return rlim.Cur, nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_RTSIG_MAX:
|
||||
return sysctl32("p1003_1b.rtsig_max"), nil
|
||||
case SC_SEM_NSEMS_MAX:
|
||||
return -1, nil
|
||||
case SC_SEM_VALUE_MAX:
|
||||
return _SEM_VALUE_MAX, nil
|
||||
case SC_SIGQUEUE_MAX:
|
||||
return sysctl32("p1003_1b.sigqueue_max"), nil
|
||||
case SC_STREAM_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err != nil {
|
||||
return -1, nil
|
||||
}
|
||||
if rlim.Cur == unix.RLIM_INFINITY {
|
||||
return -1, nil
|
||||
}
|
||||
if rlim.Cur > _LONG_MAX {
|
||||
return -1, unix.EOVERFLOW
|
||||
}
|
||||
if rlim.Cur > _SHRT_MAX {
|
||||
return _SHRT_MAX, nil
|
||||
}
|
||||
return rlim.Cur, nil
|
||||
case SC_THREAD_DESTRUCTOR_ITERATIONS:
|
||||
return _PTHREAD_DESTRUCTOR_ITERATIONS, nil
|
||||
case SC_THREAD_KEYS_MAX:
|
||||
return _PTHREAD_KEYS_MAX, nil
|
||||
case SC_THREAD_PRIO_INHERIT:
|
||||
return _POSIX_THREAD_PRIO_INHERIT, nil
|
||||
case SC_THREAD_PRIO_PROTECT:
|
||||
return _POSIX_THREAD_PRIO_PROTECT, nil
|
||||
case SC_THREAD_STACK_MIN:
|
||||
return _PTHREAD_STACK_MIN, nil
|
||||
case SC_THREAD_THREADS_MAX:
|
||||
return -1, nil
|
||||
case SC_TIMER_MAX:
|
||||
return yesno(sysctl32("p1003_1b.timer_max")), nil
|
||||
case SC_TTY_NAME_MAX:
|
||||
return pathconf(_PATH_DEV, _PC_NAME_MAX), nil
|
||||
case SC_TZNAME_MAX:
|
||||
return pathconf(_PATH_ZONEINFO, _PC_NAME_MAX), nil
|
||||
|
||||
case SC_IPV6:
|
||||
if _POSIX_IPV6 == 0 {
|
||||
fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0)
|
||||
if err == nil && fd >= 0 {
|
||||
unix.Close(fd)
|
||||
return int64(200112), nil
|
||||
}
|
||||
return 0, nil
|
||||
}
|
||||
return _POSIX_IPV6, nil
|
||||
case SC_MESSAGE_PASSING:
|
||||
if _POSIX_MESSAGE_PASSING == 0 {
|
||||
return yesno(sysctl32("p1003_1b.message_passing")), nil
|
||||
}
|
||||
return _POSIX_MESSAGE_PASSING, nil
|
||||
case SC_PRIORITIZED_IO:
|
||||
if _POSIX_PRIORITIZED_IO == 0 {
|
||||
return yesno(sysctl32("p1003_1b.prioritized_io")), nil
|
||||
}
|
||||
return _POSIX_PRIORITIZED_IO, nil
|
||||
case SC_PRIORITY_SCHEDULING:
|
||||
if _POSIX_PRIORITY_SCHEDULING == 0 {
|
||||
return yesno(sysctl32("p1003_1b.priority_scheduling")), nil
|
||||
}
|
||||
return _POSIX_PRIORITY_SCHEDULING, nil
|
||||
case SC_REALTIME_SIGNALS:
|
||||
if _POSIX_REALTIME_SIGNALS == 0 {
|
||||
return yesno(sysctl32("p1003_1b.realtime_signals")), nil
|
||||
}
|
||||
return _POSIX_REALTIME_SIGNALS, nil
|
||||
case SC_SAVED_IDS:
|
||||
return yesno(sysctl32("kern.saved_ids")), nil
|
||||
case SC_SEMAPHORES:
|
||||
if _POSIX_SEMAPHORES == 0 {
|
||||
return yesno(sysctl32("p1003_1b.semaphores")), nil
|
||||
}
|
||||
return _POSIX_SEMAPHORES, nil
|
||||
case SC_SPAWN:
|
||||
return _POSIX_SPAWN, nil
|
||||
case SC_SPIN_LOCKS:
|
||||
return _POSIX_SPIN_LOCKS, nil
|
||||
case SC_SPORADIC_SERVER:
|
||||
return _POSIX_SPORADIC_SERVER, nil
|
||||
case SC_SYNCHRONIZED_IO:
|
||||
if _POSIX_SYNCHRONIZED_IO == 0 {
|
||||
return yesno(sysctl32("p1003_1b.synchronized_io")), nil
|
||||
}
|
||||
return _POSIX_SYNCHRONIZED_IO, nil
|
||||
case SC_THREAD_ATTR_STACKADDR:
|
||||
return _POSIX_THREAD_ATTR_STACKADDR, nil
|
||||
case SC_THREAD_ATTR_STACKSIZE:
|
||||
return _POSIX_THREAD_ATTR_STACKSIZE, nil
|
||||
case SC_THREAD_CPUTIME:
|
||||
return _POSIX_THREAD_CPUTIME, nil
|
||||
case SC_THREAD_PRIORITY_SCHEDULING:
|
||||
return _POSIX_THREAD_PRIORITY_SCHEDULING, nil
|
||||
case SC_THREAD_PROCESS_SHARED:
|
||||
return _POSIX_THREAD_PROCESS_SHARED, nil
|
||||
case SC_THREAD_SAFE_FUNCTIONS:
|
||||
return _POSIX_THREAD_SAFE_FUNCTIONS, nil
|
||||
case SC_TIMERS:
|
||||
if _POSIX_TIMERS == 0 {
|
||||
return yesno(sysctl32("p1003_1b.timers")), nil
|
||||
}
|
||||
return _POSIX_TIMERS, nil
|
||||
case SC_TRACE:
|
||||
return _POSIX_TRACE, nil
|
||||
case SC_TYPED_MEMORY_OBJECTS:
|
||||
return _POSIX_TYPED_MEMORY_OBJECTS, nil
|
||||
case SC_VERSION:
|
||||
// TODO(tk): FreeBSD libc uses sysctl(CTL_KERN, KERN_POSIX1)
|
||||
return _POSIX_VERSION, nil
|
||||
|
||||
/* TODO(tk): these need GOARCH-dependent integer size checks
|
||||
case SC_V6_ILP32_OFF32:
|
||||
return _V6_ILP32_OFF32, nil
|
||||
case SC_V6_ILP32_OFFBIG:
|
||||
return _V6_ILP32_OFFBIG, nil
|
||||
case SC_V6_LP64_OFF64:
|
||||
return _V6_LP64_OFF64, nil
|
||||
case SC_V6_LPBIG_OFFBIG:
|
||||
return _V6_LPBIG_OFFBIG, nil
|
||||
*/
|
||||
|
||||
case SC_2_CHAR_TERM:
|
||||
return _POSIX2_CHAR_TERM, nil
|
||||
case SC_2_PBS,
|
||||
SC_2_PBS_ACCOUNTING,
|
||||
SC_2_PBS_CHECKPOINT,
|
||||
SC_2_PBS_LOCATE,
|
||||
SC_2_PBS_MESSAGE,
|
||||
SC_2_PBS_TRACK:
|
||||
return _POSIX2_PBS, nil
|
||||
case SC_2_UPE:
|
||||
return _POSIX2_UPE, nil
|
||||
|
||||
case SC_XOPEN_CRYPT:
|
||||
return _XOPEN_CRYPT, nil
|
||||
case SC_XOPEN_ENH_I18N:
|
||||
return _XOPEN_ENH_I18N, nil
|
||||
case SC_XOPEN_REALTIME:
|
||||
return _XOPEN_REALTIME, nil
|
||||
case SC_XOPEN_REALTIME_THREADS:
|
||||
return _XOPEN_REALTIME_THREADS, nil
|
||||
case SC_XOPEN_SHM:
|
||||
return _XOPEN_SHM, nil
|
||||
case SC_XOPEN_STREAMS:
|
||||
return -1, nil
|
||||
case SC_XOPEN_UNIX:
|
||||
return _XOPEN_UNIX, nil
|
||||
|
||||
case SC_PHYS_PAGES:
|
||||
if val, err := unix.SysctlUint64("hw.availpages"); err == nil {
|
||||
return int64(val), nil
|
||||
}
|
||||
return -1, nil
|
||||
case SC_NPROCESSORS_CONF:
|
||||
fallthrough
|
||||
case SC_NPROCESSORS_ONLN:
|
||||
if val, err := unix.SysctlUint32("hw.ncpu"); err == nil {
|
||||
return int64(val), nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
|
||||
return sysconfGeneric(name)
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
// Copyright 2021 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build darwin || dragonfly || freebsd || linux || netbsd || openbsd
|
||||
// +build darwin dragonfly freebsd linux netbsd openbsd
|
||||
|
||||
package sysconf
|
||||
|
||||
import "os"
|
||||
|
||||
func sysconfGeneric(name int) (int64, error) {
|
||||
// POSIX default values
|
||||
if sc, err := sysconfPOSIX(name); err == nil {
|
||||
return sc, nil
|
||||
}
|
||||
|
||||
switch name {
|
||||
case SC_BC_BASE_MAX:
|
||||
return _BC_BASE_MAX, nil
|
||||
case SC_BC_DIM_MAX:
|
||||
return _BC_DIM_MAX, nil
|
||||
case SC_BC_SCALE_MAX:
|
||||
return _BC_SCALE_MAX, nil
|
||||
case SC_BC_STRING_MAX:
|
||||
return _BC_STRING_MAX, nil
|
||||
case SC_COLL_WEIGHTS_MAX:
|
||||
return _COLL_WEIGHTS_MAX, nil
|
||||
case SC_EXPR_NEST_MAX:
|
||||
return _EXPR_NEST_MAX, nil
|
||||
case SC_HOST_NAME_MAX:
|
||||
return _HOST_NAME_MAX, nil
|
||||
case SC_LINE_MAX:
|
||||
return _LINE_MAX, nil
|
||||
case SC_LOGIN_NAME_MAX:
|
||||
return _LOGIN_NAME_MAX, nil
|
||||
case SC_PAGESIZE: // same as SC_PAGE_SIZE
|
||||
return int64(os.Getpagesize()), nil
|
||||
case SC_RE_DUP_MAX:
|
||||
return _RE_DUP_MAX, nil
|
||||
case SC_SYMLOOP_MAX:
|
||||
return _SYMLOOP_MAX, nil
|
||||
}
|
||||
|
||||
return -1, errInvalid
|
||||
}
|
|
@ -0,0 +1,357 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"runtime"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/tklauser/numcpus"
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
const (
|
||||
// CLK_TCK is a constant on Linux, see e.g.
|
||||
// https://git.musl-libc.org/cgit/musl/tree/src/conf/sysconf.c#n30 and
|
||||
// https://github.com/containerd/cgroups/pull/12
|
||||
_SYSTEM_CLK_TCK = 100
|
||||
)
|
||||
|
||||
func readProcFsInt64(path string, fallback int64) int64 {
|
||||
data, err := ioutil.ReadFile(path)
|
||||
if err != nil {
|
||||
return fallback
|
||||
}
|
||||
i, err := strconv.ParseInt(string(data[:len(data)-1]), 0, 64)
|
||||
if err != nil {
|
||||
return fallback
|
||||
}
|
||||
return i
|
||||
}
|
||||
|
||||
// getMemPages computes mem*unit/os.Getpagesize(), but avoids overflowing int64.
|
||||
func getMemPages(mem uint64, unit uint32) int64 {
|
||||
pageSize := os.Getpagesize()
|
||||
for unit > 1 && pageSize > 1 {
|
||||
unit >>= 1
|
||||
pageSize >>= 1
|
||||
}
|
||||
mem *= uint64(unit)
|
||||
for pageSize > 1 {
|
||||
pageSize >>= 1
|
||||
mem >>= 1
|
||||
}
|
||||
return int64(mem)
|
||||
}
|
||||
|
||||
func getPhysPages() int64 {
|
||||
var si unix.Sysinfo_t
|
||||
err := unix.Sysinfo(&si)
|
||||
if err != nil {
|
||||
return int64(0)
|
||||
}
|
||||
return getMemPages(uint64(si.Totalram), si.Unit)
|
||||
}
|
||||
|
||||
func getAvPhysPages() int64 {
|
||||
var si unix.Sysinfo_t
|
||||
err := unix.Sysinfo(&si)
|
||||
if err != nil {
|
||||
return int64(0)
|
||||
}
|
||||
return getMemPages(uint64(si.Freeram), si.Unit)
|
||||
}
|
||||
|
||||
func getNprocsSysfs() (int64, error) {
|
||||
n, err := numcpus.GetOnline()
|
||||
return int64(n), err
|
||||
}
|
||||
|
||||
func getNprocsProcStat() (int64, error) {
|
||||
f, err := os.Open("/proc/stat")
|
||||
if err != nil {
|
||||
return -1, err
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
count := int64(0)
|
||||
s := bufio.NewScanner(f)
|
||||
for s.Scan() {
|
||||
if line := strings.TrimSpace(s.Text()); strings.HasPrefix(line, "cpu") {
|
||||
l := strings.SplitN(line, " ", 2)
|
||||
_, err := strconv.ParseInt(l[0][3:], 10, 64)
|
||||
if err == nil {
|
||||
count++
|
||||
}
|
||||
} else {
|
||||
// The current format of /proc/stat has all the
|
||||
// cpu* lines at the beginning. Assume this
|
||||
// stays this way.
|
||||
break
|
||||
}
|
||||
}
|
||||
return count, nil
|
||||
}
|
||||
|
||||
func getNprocs() int64 {
|
||||
count, err := getNprocsSysfs()
|
||||
if err == nil {
|
||||
return count
|
||||
}
|
||||
|
||||
count, err = getNprocsProcStat()
|
||||
if err == nil {
|
||||
return count
|
||||
}
|
||||
|
||||
// default to the value determined at runtime startup if all else fails
|
||||
return int64(runtime.NumCPU())
|
||||
}
|
||||
|
||||
func getNprocsConf() int64 {
|
||||
// TODO(tk): read /sys/devices/system/cpu/present instead?
|
||||
d, err := os.Open("/sys/devices/system/cpu")
|
||||
if err == nil {
|
||||
defer d.Close()
|
||||
fis, err := d.Readdir(-1)
|
||||
if err == nil {
|
||||
count := int64(0)
|
||||
for _, fi := range fis {
|
||||
if name := fi.Name(); fi.IsDir() && strings.HasPrefix(name, "cpu") {
|
||||
_, err := strconv.ParseInt(name[3:], 10, 64)
|
||||
if err == nil {
|
||||
count++
|
||||
}
|
||||
}
|
||||
}
|
||||
return count
|
||||
}
|
||||
}
|
||||
|
||||
// TODO(tk): fall back to reading /proc/cpuinfo on legacy systems
|
||||
// without sysfs?
|
||||
|
||||
return getNprocs()
|
||||
}
|
||||
|
||||
func hasClock(clockid int32) bool {
|
||||
var res unix.Timespec
|
||||
if err := unix.ClockGetres(clockid, &res); err != nil {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
func max(a, b int64) int64 {
|
||||
if a > b {
|
||||
return a
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
||||
func sysconf(name int) (int64, error) {
|
||||
switch name {
|
||||
case SC_AIO_LISTIO_MAX:
|
||||
return -1, nil
|
||||
case SC_AIO_MAX:
|
||||
return -1, nil
|
||||
case SC_AIO_PRIO_DELTA_MAX:
|
||||
return _AIO_PRIO_DELTA_MAX, nil
|
||||
case SC_ARG_MAX:
|
||||
argMax := int64(_POSIX_ARG_MAX)
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_STACK, &rlim); err == nil {
|
||||
argMax = max(argMax, int64(rlim.Cur/4))
|
||||
}
|
||||
return argMax, nil
|
||||
case SC_ATEXIT_MAX:
|
||||
return _INT_MAX, nil
|
||||
case SC_CHILD_MAX:
|
||||
childMax := int64(-1)
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil && rlim.Cur != unix.RLIM_INFINITY {
|
||||
childMax = int64(rlim.Cur)
|
||||
}
|
||||
return childMax, nil
|
||||
case SC_CLK_TCK:
|
||||
return _SYSTEM_CLK_TCK, nil
|
||||
case SC_DELAYTIMER_MAX:
|
||||
return _DELAYTIMER_MAX, nil
|
||||
case SC_GETGR_R_SIZE_MAX:
|
||||
return _NSS_BUFLEN_GROUP, nil
|
||||
case SC_GETPW_R_SIZE_MAX:
|
||||
return _NSS_BUFLEN_PASSWD, nil
|
||||
case SC_MQ_OPEN_MAX:
|
||||
return -1, nil
|
||||
case SC_MQ_PRIO_MAX:
|
||||
return _MQ_PRIO_MAX, nil
|
||||
case SC_NGROUPS_MAX:
|
||||
return readProcFsInt64("/proc/sys/kernel/ngroups_max", _NGROUPS_MAX), nil
|
||||
case SC_OPEN_MAX:
|
||||
openMax := int64(_OPEN_MAX)
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
openMax = int64(rlim.Cur)
|
||||
}
|
||||
return openMax, nil
|
||||
case SC_RTSIG_MAX:
|
||||
return _RTSIG_MAX, nil
|
||||
case SC_SEM_NSEMS_MAX:
|
||||
return -1, nil
|
||||
case SC_SEM_VALUE_MAX:
|
||||
return _SEM_VALUE_MAX, nil
|
||||
case SC_SIGQUEUE_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_SIGPENDING, &rlim); err == nil {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
return readProcFsInt64("/proc/sys/kernel/rtsig-max", _POSIX_SIGQUEUE_MAX), nil
|
||||
case SC_STREAM_MAX:
|
||||
return _STREAM_MAX, nil
|
||||
case SC_THREAD_DESTRUCTOR_ITERATIONS:
|
||||
return _POSIX_THREAD_DESTRUCTOR_ITERATIONS, nil
|
||||
case SC_THREAD_KEYS_MAX:
|
||||
return _PTHREAD_KEYS_MAX, nil
|
||||
case SC_THREAD_PRIO_INHERIT:
|
||||
return _POSIX_THREAD_PRIO_INHERIT, nil
|
||||
case SC_THREAD_PRIO_PROTECT:
|
||||
return _POSIX_THREAD_PRIO_PROTECT, nil
|
||||
case SC_THREAD_STACK_MIN:
|
||||
return _PTHREAD_STACK_MIN, nil
|
||||
case SC_THREAD_THREADS_MAX:
|
||||
return -1, nil
|
||||
case SC_TIMER_MAX:
|
||||
return -1, nil
|
||||
case SC_TTY_NAME_MAX:
|
||||
return _TTY_NAME_MAX, nil
|
||||
case SC_TZNAME_MAX:
|
||||
return -1, nil
|
||||
|
||||
case SC_CPUTIME:
|
||||
if hasClock(unix.CLOCK_PROCESS_CPUTIME_ID) {
|
||||
return _POSIX_VERSION, nil
|
||||
}
|
||||
return -1, nil
|
||||
case SC_MONOTONIC_CLOCK:
|
||||
if hasClock(unix.CLOCK_MONOTONIC) {
|
||||
return _POSIX_VERSION, nil
|
||||
}
|
||||
return -1, nil
|
||||
case SC_SAVED_IDS:
|
||||
return _POSIX_SAVED_IDS, nil
|
||||
case SC_SPAWN:
|
||||
return _POSIX_SPAWN, nil
|
||||
case SC_SPIN_LOCKS:
|
||||
return _POSIX_SPIN_LOCKS, nil
|
||||
case SC_SPORADIC_SERVER:
|
||||
return _POSIX_SPORADIC_SERVER, nil
|
||||
case SC_SYNCHRONIZED_IO:
|
||||
return _POSIX_SYNCHRONIZED_IO, nil
|
||||
case SC_THREAD_ATTR_STACKADDR:
|
||||
return _POSIX_THREAD_ATTR_STACKADDR, nil
|
||||
case SC_THREAD_ATTR_STACKSIZE:
|
||||
return _POSIX_THREAD_ATTR_STACKSIZE, nil
|
||||
case SC_THREAD_CPUTIME:
|
||||
if hasClock(unix.CLOCK_THREAD_CPUTIME_ID) {
|
||||
return _POSIX_VERSION, nil
|
||||
}
|
||||
return -1, nil
|
||||
case SC_THREAD_PRIORITY_SCHEDULING:
|
||||
return _POSIX_THREAD_PRIORITY_SCHEDULING, nil
|
||||
case SC_THREAD_PROCESS_SHARED:
|
||||
return _POSIX_THREAD_PROCESS_SHARED, nil
|
||||
case SC_THREAD_SAFE_FUNCTIONS:
|
||||
return _POSIX_THREAD_SAFE_FUNCTIONS, nil
|
||||
case SC_THREAD_SPORADIC_SERVER:
|
||||
return _POSIX_THREAD_SPORADIC_SERVER, nil
|
||||
case SC_TRACE:
|
||||
return _POSIX_TRACE, nil
|
||||
case SC_TRACE_EVENT_FILTER:
|
||||
return _POSIX_TRACE_EVENT_FILTER, nil
|
||||
case SC_TRACE_EVENT_NAME_MAX:
|
||||
return -1, nil
|
||||
case SC_TRACE_INHERIT:
|
||||
return _POSIX_TRACE_INHERIT, nil
|
||||
case SC_TRACE_LOG:
|
||||
return _POSIX_TRACE_LOG, nil
|
||||
case SC_TRACE_NAME_MAX:
|
||||
return -1, nil
|
||||
case SC_TRACE_SYS_MAX:
|
||||
return -1, nil
|
||||
case SC_TRACE_USER_EVENT_MAX:
|
||||
return -1, nil
|
||||
case SC_TYPED_MEMORY_OBJECTS:
|
||||
return _POSIX_TYPED_MEMORY_OBJECTS, nil
|
||||
|
||||
case SC_V7_ILP32_OFF32:
|
||||
return _POSIX_V7_ILP32_OFF32, nil
|
||||
case SC_V7_ILP32_OFFBIG:
|
||||
return _POSIX_V7_ILP32_OFFBIG, nil
|
||||
case SC_V7_LP64_OFF64:
|
||||
return _POSIX_V7_LP64_OFF64, nil
|
||||
case SC_V7_LPBIG_OFFBIG:
|
||||
return _POSIX_V7_LPBIG_OFFBIG, nil
|
||||
|
||||
case SC_V6_ILP32_OFF32:
|
||||
return _POSIX_V6_ILP32_OFF32, nil
|
||||
case SC_V6_ILP32_OFFBIG:
|
||||
return _POSIX_V6_ILP32_OFFBIG, nil
|
||||
case SC_V6_LP64_OFF64:
|
||||
return _POSIX_V6_LP64_OFF64, nil
|
||||
case SC_V6_LPBIG_OFFBIG:
|
||||
return _POSIX_V6_LPBIG_OFFBIG, nil
|
||||
|
||||
case SC_2_C_VERSION:
|
||||
return _POSIX2_C_VERSION, nil
|
||||
case SC_2_CHAR_TERM:
|
||||
return _POSIX2_CHAR_TERM, nil
|
||||
case SC_2_PBS,
|
||||
SC_2_PBS_ACCOUNTING,
|
||||
SC_2_PBS_CHECKPOINT,
|
||||
SC_2_PBS_LOCATE,
|
||||
SC_2_PBS_MESSAGE,
|
||||
SC_2_PBS_TRACK:
|
||||
return -1, nil
|
||||
case SC_2_UPE:
|
||||
return -1, nil
|
||||
|
||||
case SC_XOPEN_CRYPT:
|
||||
// removed in glibc 2.28
|
||||
return -1, nil
|
||||
case SC_XOPEN_ENH_I18N:
|
||||
return _XOPEN_ENH_I18N, nil
|
||||
case SC_XOPEN_REALTIME:
|
||||
return _XOPEN_REALTIME, nil
|
||||
case SC_XOPEN_REALTIME_THREADS:
|
||||
return _XOPEN_REALTIME_THREADS, nil
|
||||
case SC_XOPEN_SHM:
|
||||
return _XOPEN_SHM, nil
|
||||
case SC_XOPEN_STREAMS:
|
||||
return -1, nil
|
||||
case SC_XOPEN_UNIX:
|
||||
return _XOPEN_UNIX, nil
|
||||
case SC_XOPEN_VERSION:
|
||||
return _XOPEN_VERSION, nil
|
||||
case SC_XOPEN_XCU_VERSION:
|
||||
return _XOPEN_XCU_VERSION, nil
|
||||
|
||||
case SC_PHYS_PAGES:
|
||||
return getPhysPages(), nil
|
||||
case SC_AVPHYS_PAGES:
|
||||
return getAvPhysPages(), nil
|
||||
case SC_NPROCESSORS_CONF:
|
||||
return getNprocsConf(), nil
|
||||
case SC_NPROCESSORS_ONLN:
|
||||
return getNprocs(), nil
|
||||
case SC_UIO_MAXIOV: // same as _SC_IOV_MAX
|
||||
return _UIO_MAXIOV, nil
|
||||
}
|
||||
|
||||
return sysconfGeneric(name)
|
||||
}
|
|
@ -0,0 +1,154 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import (
|
||||
"sync"
|
||||
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
const (
|
||||
_HOST_NAME_MAX = _MAXHOSTNAMELEN
|
||||
_LOGIN_NAME_MAX = _MAXLOGNAME + 1
|
||||
_SYMLOOP_MAX = _MAXSYMLINKS
|
||||
|
||||
_POSIX2_C_DEV = -1
|
||||
_POSIX2_UPE = -1
|
||||
)
|
||||
|
||||
var (
|
||||
clktck int64
|
||||
clktckOnce sync.Once
|
||||
)
|
||||
|
||||
func sysconfPOSIX(name int) (int64, error) {
|
||||
// NetBSD does not define all _POSIX_* values used in sysconf_posix.go
|
||||
// Handle the supported ones here.
|
||||
switch name {
|
||||
case SC_SHELL:
|
||||
return _POSIX_SHELL, nil
|
||||
case SC_VERSION:
|
||||
return _POSIX_VERSION, nil
|
||||
}
|
||||
|
||||
return -1, errInvalid
|
||||
}
|
||||
|
||||
func sysconf(name int) (int64, error) {
|
||||
// NetBSD uses sysctl to get some of these values. For the user.* namespace,
|
||||
// calls get handled by user_sysctl in /usr/src/lib/libc/gen/sysctl.c
|
||||
// Duplicate the relevant values here.
|
||||
|
||||
switch name {
|
||||
case SC_ARG_MAX:
|
||||
return sysctl32("kern.argmax"), nil
|
||||
case SC_CHILD_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_STREAM_MAX:
|
||||
// sysctl("user.stream_max")
|
||||
return _FOPEN_MAX, nil
|
||||
case SC_TTY_NAME_MAX:
|
||||
return pathconf(_PATH_DEV, _PC_NAME_MAX), nil
|
||||
case SC_CLK_TCK:
|
||||
clktckOnce.Do(func() {
|
||||
clktck = -1
|
||||
if ci, err := unix.SysctlClockinfo("kern.clockrate"); err == nil {
|
||||
clktck = int64(ci.Hz)
|
||||
}
|
||||
})
|
||||
return clktck, nil
|
||||
case SC_NGROUPS_MAX:
|
||||
return sysctl32("kern.ngroups"), nil
|
||||
case SC_JOB_CONTROL:
|
||||
return sysctl32("kern.job_control"), nil
|
||||
case SC_OPEN_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
return -1, nil
|
||||
case SC_TZNAME_MAX:
|
||||
// sysctl("user.tzname_max")
|
||||
return _NAME_MAX, nil
|
||||
|
||||
// 1003.1b
|
||||
case SC_FSYNC:
|
||||
return sysctl32("kern.fsync"), nil
|
||||
case SC_MAPPED_FILES:
|
||||
return sysctl32("kern.mapped_files"), nil
|
||||
case SC_MONOTONIC_CLOCK:
|
||||
return sysctl32("kern.monotonic_clock"), nil
|
||||
case SC_SEMAPHORES:
|
||||
return sysctl32("kern.posix_semaphores"), nil
|
||||
case SC_TIMERS:
|
||||
return sysctl32("kern.posix_timers"), nil
|
||||
|
||||
// 1003.1c
|
||||
case SC_LOGIN_NAME_MAX:
|
||||
return sysctl32("kern.login_name_max"), nil
|
||||
case SC_THREADS:
|
||||
return sysctl32("kern.posix_threads"), nil
|
||||
|
||||
// 1003.1j
|
||||
case SC_BARRIERS:
|
||||
return sysctl32("kern.posix_barriers"), nil
|
||||
|
||||
// 1003.2
|
||||
case SC_2_VERSION:
|
||||
// sysctl("user.posix2_version")
|
||||
return _POSIX2_VERSION, nil
|
||||
case SC_2_UPE:
|
||||
// sysctl("user.posix2_upe")
|
||||
return _POSIX2_UPE, nil
|
||||
|
||||
// XPG 4.2
|
||||
case SC_IOV_MAX:
|
||||
return sysctl32("kern.iov_max"), nil
|
||||
|
||||
// 1003.1-2001, XSI Option Group
|
||||
case SC_AIO_LISTIO_MAX:
|
||||
return sysctl32("kern.aio_listio_max"), nil
|
||||
case SC_AIO_MAX:
|
||||
return sysctl32("kern.aio_max"), nil
|
||||
case SC_ASYNCHRONOUS_IO:
|
||||
return sysctl32("kern.posix_aio"), nil
|
||||
case SC_MQ_OPEN_MAX:
|
||||
return sysctl32("kern.mqueue.mq_open_max"), nil
|
||||
case SC_MQ_PRIO_MAX:
|
||||
return sysctl32("kern.mqueue.mq_prio_max"), nil
|
||||
case SC_ATEXIT_MAX:
|
||||
// sysctl("user.atexit_max")
|
||||
return -1, nil // TODO
|
||||
|
||||
// Extensions
|
||||
case SC_NPROCESSORS_CONF:
|
||||
return sysctl32("hw.ncpu"), nil
|
||||
case SC_NPROCESSORS_ONLN:
|
||||
return sysctl32("hw.ncpuonline"), nil
|
||||
|
||||
// Linux/Solaris
|
||||
case SC_PHYS_PAGES:
|
||||
return sysctl64("hw.physmem64") / int64(unix.Getpagesize()), nil
|
||||
|
||||
// Native
|
||||
case SC_THREAD_DESTRUCTOR_ITERATIONS:
|
||||
return _POSIX_THREAD_DESTRUCTOR_ITERATIONS, nil
|
||||
case SC_THREAD_KEYS_MAX:
|
||||
return _POSIX_THREAD_KEYS_MAX, nil
|
||||
case SC_THREAD_STACK_MIN:
|
||||
return int64(unix.Getpagesize()), nil
|
||||
case SC_THREAD_THREADS_MAX:
|
||||
return sysctl32("kern.maxproc"), nil
|
||||
}
|
||||
|
||||
return sysconfGeneric(name)
|
||||
}
|
|
@ -0,0 +1,271 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
// sysconf implements sysconf(3) as in the OpenBSD 6.3 libc.
|
||||
func sysconf(name int) (int64, error) {
|
||||
switch name {
|
||||
case SC_AIO_LISTIO_MAX,
|
||||
SC_AIO_MAX,
|
||||
SC_AIO_PRIO_DELTA_MAX:
|
||||
return -1, nil
|
||||
case SC_ARG_MAX:
|
||||
return sysctl32("kern.argmax"), nil
|
||||
case SC_ATEXIT_MAX:
|
||||
return -1, nil
|
||||
case SC_CHILD_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_CLK_TCK:
|
||||
return _CLK_TCK, nil
|
||||
case SC_DELAYTIMER_MAX:
|
||||
return -1, nil
|
||||
case SC_GETGR_R_SIZE_MAX:
|
||||
return _GR_BUF_LEN, nil
|
||||
case SC_GETPW_R_SIZE_MAX:
|
||||
return _PW_BUF_LEN, nil
|
||||
case SC_IOV_MAX:
|
||||
return _IOV_MAX, nil
|
||||
case SC_LOGIN_NAME_MAX:
|
||||
return _LOGIN_NAME_MAX, nil
|
||||
case SC_NGROUPS_MAX:
|
||||
return sysctl32("kern.ngroups"), nil
|
||||
case SC_OPEN_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_SEM_NSEMS_MAX:
|
||||
return -1, nil
|
||||
case SC_SEM_VALUE_MAX:
|
||||
return _SEM_VALUE_MAX, nil
|
||||
case SC_SIGQUEUE_MAX:
|
||||
return -1, nil
|
||||
case SC_STREAM_MAX:
|
||||
var rlim unix.Rlimit
|
||||
if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil {
|
||||
if rlim.Cur != unix.RLIM_INFINITY {
|
||||
if rlim.Cur > _SHRT_MAX {
|
||||
return _SHRT_MAX, nil
|
||||
}
|
||||
return int64(rlim.Cur), nil
|
||||
}
|
||||
}
|
||||
return -1, nil
|
||||
case SC_THREAD_DESTRUCTOR_ITERATIONS:
|
||||
return _PTHREAD_DESTRUCTOR_ITERATIONS, nil
|
||||
case SC_THREAD_KEYS_MAX:
|
||||
return _PTHREAD_KEYS_MAX, nil
|
||||
case SC_THREAD_STACK_MIN:
|
||||
return _PTHREAD_STACK_MIN, nil
|
||||
case SC_THREAD_THREADS_MAX:
|
||||
return -1, nil
|
||||
case SC_TIMER_MAX:
|
||||
return -1, nil
|
||||
case SC_TTY_NAME_MAX:
|
||||
return _TTY_NAME_MAX, nil
|
||||
case SC_TZNAME_MAX:
|
||||
return _NAME_MAX, nil
|
||||
|
||||
case SC_BARRIERS:
|
||||
return _POSIX_BARRIERS, nil
|
||||
case SC_FSYNC:
|
||||
return _POSIX_FSYNC, nil
|
||||
case SC_IPV6:
|
||||
if _POSIX_IPV6 == 0 {
|
||||
fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0)
|
||||
if err == nil && fd >= 0 {
|
||||
unix.Close(fd)
|
||||
return int64(200112), nil
|
||||
}
|
||||
return 0, nil
|
||||
}
|
||||
return _POSIX_IPV6, nil
|
||||
case SC_JOB_CONTROL:
|
||||
return _POSIX_JOB_CONTROL, nil
|
||||
case SC_MAPPED_FILES:
|
||||
return _POSIX_MAPPED_FILES, nil
|
||||
case SC_MONOTONIC_CLOCK:
|
||||
return _POSIX_MONOTONIC_CLOCK, nil
|
||||
case SC_SAVED_IDS:
|
||||
return _POSIX_SAVED_IDS, nil
|
||||
case SC_SEMAPHORES:
|
||||
return _POSIX_SEMAPHORES, nil
|
||||
case SC_SPAWN:
|
||||
return _POSIX_SPAWN, nil
|
||||
case SC_SPIN_LOCKS:
|
||||
return _POSIX_SPIN_LOCKS, nil
|
||||
case SC_SPORADIC_SERVER:
|
||||
return _POSIX_SPORADIC_SERVER, nil
|
||||
case SC_SYNCHRONIZED_IO:
|
||||
return _POSIX_SYNCHRONIZED_IO, nil
|
||||
case SC_THREAD_ATTR_STACKADDR:
|
||||
return _POSIX_THREAD_ATTR_STACKADDR, nil
|
||||
case SC_THREAD_ATTR_STACKSIZE:
|
||||
return _POSIX_THREAD_ATTR_STACKSIZE, nil
|
||||
case SC_THREAD_CPUTIME:
|
||||
return _POSIX_THREAD_CPUTIME, nil
|
||||
case SC_THREAD_PRIO_INHERIT:
|
||||
return _POSIX_THREAD_PRIO_INHERIT, nil
|
||||
case SC_THREAD_PRIO_PROTECT:
|
||||
return _POSIX_THREAD_PRIO_PROTECT, nil
|
||||
case SC_THREAD_PRIORITY_SCHEDULING:
|
||||
return _POSIX_THREAD_PRIORITY_SCHEDULING, nil
|
||||
case SC_THREAD_PROCESS_SHARED:
|
||||
return _POSIX_THREAD_PROCESS_SHARED, nil
|
||||
case SC_THREAD_ROBUST_PRIO_INHERIT:
|
||||
return _POSIX_THREAD_ROBUST_PRIO_INHERIT, nil
|
||||
case SC_THREAD_ROBUST_PRIO_PROTECT:
|
||||
return _POSIX_THREAD_ROBUST_PRIO_PROTECT, nil
|
||||
case SC_THREAD_SAFE_FUNCTIONS:
|
||||
return _POSIX_THREAD_SAFE_FUNCTIONS, nil
|
||||
case SC_THREAD_SPORADIC_SERVER:
|
||||
return _POSIX_THREAD_SPORADIC_SERVER, nil
|
||||
case SC_THREADS:
|
||||
return _POSIX_THREADS, nil
|
||||
case SC_TIMEOUTS:
|
||||
return _POSIX_TIMEOUTS, nil
|
||||
case SC_TIMERS:
|
||||
return _POSIX_TIMERS, nil
|
||||
case SC_TRACE,
|
||||
SC_TRACE_EVENT_FILTER,
|
||||
SC_TRACE_EVENT_NAME_MAX,
|
||||
SC_TRACE_INHERIT,
|
||||
SC_TRACE_LOG:
|
||||
return _POSIX_TRACE, nil
|
||||
case SC_TYPED_MEMORY_OBJECTS:
|
||||
return _POSIX_TYPED_MEMORY_OBJECTS, nil
|
||||
|
||||
case SC_V7_ILP32_OFF32:
|
||||
return _POSIX_V7_ILP32_OFF32, nil
|
||||
case SC_V7_ILP32_OFFBIG:
|
||||
if _POSIX_V7_ILP32_OFFBIG == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT == 32 &&
|
||||
unix.SizeofPtr*_CHAR_BIT == 32 &&
|
||||
sizeofOffT*_CHAR_BIT >= 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _POSIX_V7_ILP32_OFFBIG, nil
|
||||
case SC_V7_LP64_OFF64:
|
||||
if _POSIX_V7_LP64_OFF64 == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT == 64 &&
|
||||
unix.SizeofPtr*_CHAR_BIT == 64 &&
|
||||
sizeofOffT*_CHAR_BIT == 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _POSIX_V7_LP64_OFF64, nil
|
||||
case SC_V7_LPBIG_OFFBIG:
|
||||
if _POSIX_V7_LPBIG_OFFBIG == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT >= 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT >= 64 &&
|
||||
unix.SizeofPtr*_CHAR_BIT >= 64 &&
|
||||
sizeofOffT*_CHAR_BIT >= 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _POSIX_V7_LPBIG_OFFBIG, nil
|
||||
|
||||
case SC_V6_ILP32_OFF32:
|
||||
return _POSIX_V6_ILP32_OFF32, nil
|
||||
case SC_V6_ILP32_OFFBIG:
|
||||
if _POSIX_V6_ILP32_OFFBIG == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT == 32 &&
|
||||
unix.SizeofPtr*_CHAR_BIT == 32 &&
|
||||
sizeofOffT*_CHAR_BIT >= 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _POSIX_V6_ILP32_OFFBIG, nil
|
||||
case SC_V6_LP64_OFF64:
|
||||
if _POSIX_V6_LP64_OFF64 == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT == 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT == 64 &&
|
||||
unix.SizeofPtr*_CHAR_BIT == 64 &&
|
||||
sizeofOffT*_CHAR_BIT == 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _POSIX_V6_LP64_OFF64, nil
|
||||
case SC_V6_LPBIG_OFFBIG:
|
||||
if _POSIX_V6_LPBIG_OFFBIG == 0 {
|
||||
if unix.SizeofInt*_CHAR_BIT >= 32 &&
|
||||
unix.SizeofLong*_CHAR_BIT >= 64 &&
|
||||
unix.SizeofPtr*_CHAR_BIT >= 64 &&
|
||||
sizeofOffT*_CHAR_BIT >= 64 {
|
||||
return 1, nil
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
return _POSIX_V6_LPBIG_OFFBIG, nil
|
||||
|
||||
case SC_2_CHAR_TERM:
|
||||
return _POSIX2_CHAR_TERM, nil
|
||||
case SC_2_PBS,
|
||||
SC_2_PBS_ACCOUNTING,
|
||||
SC_2_PBS_CHECKPOINT,
|
||||
SC_2_PBS_LOCATE,
|
||||
SC_2_PBS_MESSAGE,
|
||||
SC_2_PBS_TRACK:
|
||||
return _POSIX2_PBS, nil
|
||||
case SC_2_UPE:
|
||||
return _POSIX2_UPE, nil
|
||||
case SC_2_VERSION:
|
||||
return _POSIX2_VERSION, nil
|
||||
|
||||
case SC_XOPEN_CRYPT:
|
||||
return _XOPEN_CRYPT, nil
|
||||
case SC_XOPEN_ENH_I18N:
|
||||
return _XOPEN_ENH_I18N, nil
|
||||
case SC_XOPEN_REALTIME:
|
||||
return _XOPEN_REALTIME, nil
|
||||
case SC_XOPEN_REALTIME_THREADS:
|
||||
return _XOPEN_REALTIME_THREADS, nil
|
||||
case SC_XOPEN_SHM:
|
||||
return _XOPEN_SHM, nil
|
||||
case SC_XOPEN_STREAMS:
|
||||
return _XOPEN_STREAMS, nil
|
||||
case SC_XOPEN_UNIX:
|
||||
return _XOPEN_UNIX, nil
|
||||
case SC_XOPEN_UUCP:
|
||||
return _XOPEN_UUCP, nil
|
||||
|
||||
case SC_AVPHYS_PAGES:
|
||||
if uvm, err := unix.SysctlUvmexp("vm.uvmexp"); err == nil {
|
||||
return int64(uvm.Free), nil
|
||||
}
|
||||
return -1, nil
|
||||
case SC_PHYS_PAGES:
|
||||
return sysctl64("hw.physmem") / int64(unix.Getpagesize()), nil
|
||||
case SC_NPROCESSORS_CONF:
|
||||
return sysctl32("hw.ncpu"), nil
|
||||
case SC_NPROCESSORS_ONLN:
|
||||
if val, err := unix.SysctlUint32("hw.ncpuonline"); err == nil {
|
||||
return int64(val), nil
|
||||
}
|
||||
return sysctl32("hw.ncpu"), nil
|
||||
}
|
||||
|
||||
return sysconfGeneric(name)
|
||||
}
|
|
@ -0,0 +1,83 @@
|
|||
// Copyright 2018 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build darwin || dragonfly || freebsd || linux || openbsd
|
||||
// +build darwin dragonfly freebsd linux openbsd
|
||||
|
||||
package sysconf
|
||||
|
||||
func sysconfPOSIX(name int) (int64, error) {
|
||||
switch name {
|
||||
case SC_ADVISORY_INFO:
|
||||
return _POSIX_ADVISORY_INFO, nil
|
||||
case SC_ASYNCHRONOUS_IO:
|
||||
return _POSIX_ASYNCHRONOUS_IO, nil
|
||||
case SC_BARRIERS:
|
||||
return _POSIX_BARRIERS, nil
|
||||
case SC_CLOCK_SELECTION:
|
||||
return _POSIX_CLOCK_SELECTION, nil
|
||||
case SC_CPUTIME:
|
||||
return _POSIX_CPUTIME, nil
|
||||
case SC_FSYNC:
|
||||
return _POSIX_FSYNC, nil
|
||||
case SC_IPV6:
|
||||
return _POSIX_IPV6, nil
|
||||
case SC_JOB_CONTROL:
|
||||
return _POSIX_JOB_CONTROL, nil
|
||||
case SC_MAPPED_FILES:
|
||||
return _POSIX_MAPPED_FILES, nil
|
||||
case SC_MEMLOCK:
|
||||
return _POSIX_MEMLOCK, nil
|
||||
case SC_MEMLOCK_RANGE:
|
||||
return _POSIX_MEMLOCK_RANGE, nil
|
||||
case SC_MONOTONIC_CLOCK:
|
||||
return _POSIX_MONOTONIC_CLOCK, nil
|
||||
case SC_MEMORY_PROTECTION:
|
||||
return _POSIX_MEMORY_PROTECTION, nil
|
||||
case SC_MESSAGE_PASSING:
|
||||
return _POSIX_MESSAGE_PASSING, nil
|
||||
case SC_PRIORITIZED_IO:
|
||||
return _POSIX_PRIORITIZED_IO, nil
|
||||
case SC_PRIORITY_SCHEDULING:
|
||||
return _POSIX_PRIORITY_SCHEDULING, nil
|
||||
case SC_RAW_SOCKETS:
|
||||
return _POSIX_RAW_SOCKETS, nil
|
||||
case SC_READER_WRITER_LOCKS:
|
||||
return _POSIX_READER_WRITER_LOCKS, nil
|
||||
case SC_REALTIME_SIGNALS:
|
||||
return _POSIX_REALTIME_SIGNALS, nil
|
||||
case SC_REGEXP:
|
||||
return _POSIX_REGEXP, nil
|
||||
case SC_SEMAPHORES:
|
||||
return _POSIX_SEMAPHORES, nil
|
||||
case SC_SHARED_MEMORY_OBJECTS:
|
||||
return _POSIX_SHARED_MEMORY_OBJECTS, nil
|
||||
case SC_SHELL:
|
||||
return _POSIX_SHELL, nil
|
||||
case SC_THREADS:
|
||||
return _POSIX_THREADS, nil
|
||||
case SC_TIMEOUTS:
|
||||
return _POSIX_TIMEOUTS, nil
|
||||
case SC_TIMERS:
|
||||
return _POSIX_TIMERS, nil
|
||||
case SC_VERSION:
|
||||
return _POSIX_VERSION, nil
|
||||
|
||||
case SC_2_C_BIND:
|
||||
return _POSIX2_C_BIND, nil
|
||||
case SC_2_C_DEV:
|
||||
return _POSIX2_C_DEV, nil
|
||||
case SC_2_FORT_DEV:
|
||||
return -1, nil
|
||||
case SC_2_FORT_RUN:
|
||||
return -1, nil
|
||||
case SC_2_LOCALEDEF:
|
||||
return _POSIX2_LOCALEDEF, nil
|
||||
case SC_2_SW_DEV:
|
||||
return _POSIX2_SW_DEV, nil
|
||||
case SC_2_VERSION:
|
||||
return _POSIX2_VERSION, nil
|
||||
}
|
||||
return -1, errInvalid
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
// Copyright 2021 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package sysconf
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
func sysconf(name int) (int64, error) {
|
||||
if name < 0 {
|
||||
return -1, errInvalid
|
||||
}
|
||||
return unix.Sysconf(name)
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
// Copyright 2021 Tobias Klauser. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
//go:build !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris
|
||||
// +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris
|
||||
|
||||
package sysconf
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"runtime"
|
||||
)
|
||||
|
||||
func sysconf(name int) (int64, error) {
|
||||
return -1, fmt.Errorf("unsupported on %s", runtime.GOOS)
|
||||
}
|
|
@ -0,0 +1,251 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_defs_darwin.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x2a
|
||||
SC_AIO_MAX = 0x2b
|
||||
SC_AIO_PRIO_DELTA_MAX = 0x2c
|
||||
SC_ARG_MAX = 0x1
|
||||
SC_ATEXIT_MAX = 0x6b
|
||||
SC_BC_BASE_MAX = 0x9
|
||||
SC_BC_DIM_MAX = 0xa
|
||||
SC_BC_SCALE_MAX = 0xb
|
||||
SC_BC_STRING_MAX = 0xc
|
||||
SC_CHILD_MAX = 0x2
|
||||
SC_CLK_TCK = 0x3
|
||||
SC_COLL_WEIGHTS_MAX = 0xd
|
||||
SC_DELAYTIMER_MAX = 0x2d
|
||||
SC_EXPR_NEST_MAX = 0xe
|
||||
SC_GETGR_R_SIZE_MAX = 0x46
|
||||
SC_GETPW_R_SIZE_MAX = 0x47
|
||||
SC_HOST_NAME_MAX = 0x48
|
||||
SC_IOV_MAX = 0x38
|
||||
SC_LINE_MAX = 0xf
|
||||
SC_LOGIN_NAME_MAX = 0x49
|
||||
SC_MQ_OPEN_MAX = 0x2e
|
||||
SC_MQ_PRIO_MAX = 0x4b
|
||||
SC_NGROUPS_MAX = 0x4
|
||||
SC_OPEN_MAX = 0x5
|
||||
SC_PAGE_SIZE = 0x1d
|
||||
SC_PAGESIZE = 0x1d
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x55
|
||||
SC_THREAD_KEYS_MAX = 0x56
|
||||
SC_THREAD_STACK_MIN = 0x5d
|
||||
SC_THREAD_THREADS_MAX = 0x5e
|
||||
SC_RE_DUP_MAX = 0x10
|
||||
SC_RTSIG_MAX = 0x30
|
||||
SC_SEM_NSEMS_MAX = 0x31
|
||||
SC_SEM_VALUE_MAX = 0x32
|
||||
SC_SIGQUEUE_MAX = 0x33
|
||||
SC_STREAM_MAX = 0x1a
|
||||
SC_SYMLOOP_MAX = 0x78
|
||||
SC_TIMER_MAX = 0x34
|
||||
SC_TTY_NAME_MAX = 0x65
|
||||
SC_TZNAME_MAX = 0x1b
|
||||
|
||||
SC_ADVISORY_INFO = 0x41
|
||||
SC_ASYNCHRONOUS_IO = 0x1c
|
||||
SC_BARRIERS = 0x42
|
||||
SC_CLOCK_SELECTION = 0x43
|
||||
SC_CPUTIME = 0x44
|
||||
SC_FSYNC = 0x26
|
||||
SC_IPV6 = 0x76
|
||||
SC_JOB_CONTROL = 0x6
|
||||
SC_MAPPED_FILES = 0x2f
|
||||
SC_MEMLOCK = 0x1e
|
||||
SC_MEMLOCK_RANGE = 0x1f
|
||||
SC_MEMORY_PROTECTION = 0x20
|
||||
SC_MESSAGE_PASSING = 0x21
|
||||
SC_MONOTONIC_CLOCK = 0x4a
|
||||
SC_PRIORITIZED_IO = 0x22
|
||||
SC_PRIORITY_SCHEDULING = 0x23
|
||||
SC_RAW_SOCKETS = 0x77
|
||||
SC_READER_WRITER_LOCKS = 0x4c
|
||||
SC_REALTIME_SIGNALS = 0x24
|
||||
SC_REGEXP = 0x4d
|
||||
SC_SAVED_IDS = 0x7
|
||||
SC_SEMAPHORES = 0x25
|
||||
SC_SHARED_MEMORY_OBJECTS = 0x27
|
||||
SC_SHELL = 0x4e
|
||||
SC_SPAWN = 0x4f
|
||||
SC_SPIN_LOCKS = 0x50
|
||||
SC_SPORADIC_SERVER = 0x51
|
||||
SC_SS_REPL_MAX = 0x7e
|
||||
SC_SYNCHRONIZED_IO = 0x28
|
||||
SC_THREAD_ATTR_STACKADDR = 0x52
|
||||
SC_THREAD_ATTR_STACKSIZE = 0x53
|
||||
SC_THREAD_CPUTIME = 0x54
|
||||
SC_THREAD_PRIO_INHERIT = 0x57
|
||||
SC_THREAD_PRIO_PROTECT = 0x58
|
||||
SC_THREAD_PRIORITY_SCHEDULING = 0x59
|
||||
SC_THREAD_PROCESS_SHARED = 0x5a
|
||||
SC_THREAD_SAFE_FUNCTIONS = 0x5b
|
||||
SC_THREAD_SPORADIC_SERVER = 0x5c
|
||||
SC_THREADS = 0x60
|
||||
SC_TIMEOUTS = 0x5f
|
||||
SC_TIMERS = 0x29
|
||||
SC_TRACE = 0x61
|
||||
SC_TRACE_EVENT_FILTER = 0x62
|
||||
SC_TRACE_EVENT_NAME_MAX = 0x7f
|
||||
SC_TRACE_INHERIT = 0x63
|
||||
SC_TRACE_LOG = 0x64
|
||||
SC_TRACE_NAME_MAX = 0x80
|
||||
SC_TRACE_SYS_MAX = 0x81
|
||||
SC_TRACE_USER_EVENT_MAX = 0x82
|
||||
SC_TYPED_MEMORY_OBJECTS = 0x66
|
||||
SC_VERSION = 0x8
|
||||
|
||||
SC_V6_ILP32_OFF32 = 0x67
|
||||
SC_V6_ILP32_OFFBIG = 0x68
|
||||
SC_V6_LP64_OFF64 = 0x69
|
||||
SC_V6_LPBIG_OFFBIG = 0x6a
|
||||
|
||||
SC_2_C_BIND = 0x12
|
||||
SC_2_C_DEV = 0x13
|
||||
SC_2_CHAR_TERM = 0x14
|
||||
SC_2_FORT_DEV = 0x15
|
||||
SC_2_FORT_RUN = 0x16
|
||||
SC_2_LOCALEDEF = 0x17
|
||||
SC_2_PBS = 0x3b
|
||||
SC_2_PBS_ACCOUNTING = 0x3c
|
||||
SC_2_PBS_CHECKPOINT = 0x3d
|
||||
SC_2_PBS_LOCATE = 0x3e
|
||||
SC_2_PBS_MESSAGE = 0x3f
|
||||
SC_2_PBS_TRACK = 0x40
|
||||
SC_2_SW_DEV = 0x18
|
||||
SC_2_UPE = 0x19
|
||||
SC_2_VERSION = 0x11
|
||||
|
||||
SC_XOPEN_CRYPT = 0x6c
|
||||
SC_XOPEN_ENH_I18N = 0x6d
|
||||
SC_XOPEN_REALTIME = 0x6f
|
||||
SC_XOPEN_REALTIME_THREADS = 0x70
|
||||
SC_XOPEN_SHM = 0x71
|
||||
SC_XOPEN_STREAMS = 0x72
|
||||
SC_XOPEN_UNIX = 0x73
|
||||
SC_XOPEN_VERSION = 0x74
|
||||
SC_XOPEN_XCU_VERSION = 0x79
|
||||
|
||||
SC_PHYS_PAGES = 0xc8
|
||||
SC_NPROCESSORS_CONF = 0x39
|
||||
SC_NPROCESSORS_ONLN = 0x3a
|
||||
)
|
||||
|
||||
const (
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0x2
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_IOV_MAX = 0x400
|
||||
_LINE_MAX = 0x800
|
||||
_NAME_MAX = 0xff
|
||||
_RE_DUP_MAX = 0xff
|
||||
|
||||
_CLK_TCK = 0x64
|
||||
|
||||
_MAXHOSTNAMELEN = 0x100
|
||||
_MAXLOGNAME = 0xff
|
||||
_MAXSYMLINKS = 0x20
|
||||
|
||||
_POSIX_ADVISORY_INFO = -0x1
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = -0x1
|
||||
_POSIX_BARRIERS = -0x1
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = -0x1
|
||||
_POSIX_CPUTIME = -0x1
|
||||
_POSIX_FSYNC = 0x30db0
|
||||
_POSIX_IPV6 = 0x30db0
|
||||
_POSIX_JOB_CONTROL = 0x30db0
|
||||
_POSIX_MAPPED_FILES = 0x30db0
|
||||
_POSIX_MEMLOCK = -0x1
|
||||
_POSIX_MEMLOCK_RANGE = -0x1
|
||||
_POSIX_MEMORY_PROTECTION = 0x30db0
|
||||
_POSIX_MESSAGE_PASSING = -0x1
|
||||
_POSIX_MONOTONIC_CLOCK = -0x1
|
||||
_POSIX_PRIORITIZED_IO = -0x1
|
||||
_POSIX_PRIORITY_SCHEDULING = -0x1
|
||||
_POSIX_RAW_SOCKETS = -0x1
|
||||
_POSIX_READER_WRITER_LOCKS = 0x30db0
|
||||
_POSIX_REALTIME_SIGNALS = -0x1
|
||||
_POSIX_REGEXP = 0x30db0
|
||||
_POSIX_SEM_VALUE_MAX = 0x7fff
|
||||
_POSIX_SEMAPHORES = -0x1
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_SHELL = 0x30db0
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = -0x1
|
||||
_POSIX_SPIN_LOCKS = -0x1
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SS_REPL_MAX = 0x4
|
||||
_POSIX_SYNCHRONIZED_IO = -0x1
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x30db0
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x30db0
|
||||
_POSIX_THREAD_CPUTIME = -0x1
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_KEYS_MAX = 0x80
|
||||
_POSIX_THREAD_PRIO_INHERIT = -0x1
|
||||
_POSIX_THREAD_PRIO_PROTECT = -0x1
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = -0x1
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x30db0
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x30db0
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x30db0
|
||||
_POSIX_TIMEOUTS = -0x1
|
||||
_POSIX_TIMERS = -0x1
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_EVENT_NAME_MAX = 0x1e
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TRACE_NAME_MAX = 0x8
|
||||
_POSIX_TRACE_SYS_MAX = 0x8
|
||||
_POSIX_TRACE_USER_EVENT_MAX = 0x20
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x30db0
|
||||
|
||||
_V6_ILP32_OFF32 = -0x1
|
||||
_V6_ILP32_OFFBIG = -0x1
|
||||
_V6_LP64_OFF64 = 0x1
|
||||
_V6_LPBIG_OFFBIG = 0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x30db0
|
||||
_POSIX2_C_DEV = 0x30db0
|
||||
_POSIX2_CHAR_TERM = 0x30db0
|
||||
_POSIX2_LOCALEDEF = 0x30db0
|
||||
_POSIX2_PBS = -0x1
|
||||
_POSIX2_SW_DEV = 0x30db0
|
||||
_POSIX2_UPE = 0x30db0
|
||||
_POSIX2_VERSION = 0x30db0
|
||||
|
||||
_XOPEN_CRYPT = 0x1
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = -0x1
|
||||
_XOPEN_REALTIME_THREADS = -0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x258
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
|
||||
_PTHREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_PTHREAD_KEYS_MAX = 0x200
|
||||
_PTHREAD_STACK_MIN = 0x2000
|
||||
)
|
||||
|
||||
const (
|
||||
_PC_NAME_MAX = 0x4
|
||||
|
||||
_PATH_ZONEINFO = "/usr/share/zoneinfo"
|
||||
)
|
||||
|
||||
const (
|
||||
_CHAR_BIT = 0x8
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
sizeofOffT = 0x8
|
||||
)
|
|
@ -0,0 +1,225 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_defs_dragonfly.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x2a
|
||||
SC_AIO_MAX = 0x2b
|
||||
SC_AIO_PRIO_DELTA_MAX = 0x2c
|
||||
SC_ARG_MAX = 0x1
|
||||
SC_ATEXIT_MAX = 0x6b
|
||||
SC_BC_BASE_MAX = 0x9
|
||||
SC_BC_DIM_MAX = 0xa
|
||||
SC_BC_SCALE_MAX = 0xb
|
||||
SC_BC_STRING_MAX = 0xc
|
||||
SC_CHILD_MAX = 0x2
|
||||
SC_CLK_TCK = 0x3
|
||||
SC_COLL_WEIGHTS_MAX = 0xd
|
||||
SC_DELAYTIMER_MAX = 0x2d
|
||||
SC_EXPR_NEST_MAX = 0xe
|
||||
SC_GETGR_R_SIZE_MAX = 0x46
|
||||
SC_GETPW_R_SIZE_MAX = 0x47
|
||||
SC_HOST_NAME_MAX = 0x48
|
||||
SC_IOV_MAX = 0x38
|
||||
SC_LINE_MAX = 0xf
|
||||
SC_LOGIN_NAME_MAX = 0x49
|
||||
SC_MQ_OPEN_MAX = 0x2e
|
||||
SC_MQ_PRIO_MAX = 0x4b
|
||||
SC_NGROUPS_MAX = 0x4
|
||||
SC_OPEN_MAX = 0x5
|
||||
SC_PAGE_SIZE = 0x2f
|
||||
SC_PAGESIZE = 0x2f
|
||||
SC_RE_DUP_MAX = 0x10
|
||||
SC_RTSIG_MAX = 0x30
|
||||
SC_SEM_NSEMS_MAX = 0x31
|
||||
SC_SEM_VALUE_MAX = 0x32
|
||||
SC_SIGQUEUE_MAX = 0x33
|
||||
SC_STREAM_MAX = 0x1a
|
||||
SC_SYMLOOP_MAX = 0x78
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x55
|
||||
SC_THREAD_KEYS_MAX = 0x56
|
||||
SC_THREAD_STACK_MIN = 0x5d
|
||||
SC_THREAD_THREADS_MAX = 0x5e
|
||||
SC_TIMER_MAX = 0x34
|
||||
SC_TTY_NAME_MAX = 0x65
|
||||
SC_TZNAME_MAX = 0x1b
|
||||
|
||||
SC_ADVISORY_INFO = 0x41
|
||||
SC_ASYNCHRONOUS_IO = 0x1c
|
||||
SC_BARRIERS = 0x42
|
||||
SC_CLOCK_SELECTION = 0x43
|
||||
SC_CPUTIME = 0x44
|
||||
SC_FSYNC = 0x26
|
||||
SC_IPV6 = 0x76
|
||||
SC_JOB_CONTROL = 0x6
|
||||
SC_MAPPED_FILES = 0x1d
|
||||
SC_MEMLOCK = 0x1e
|
||||
SC_MEMLOCK_RANGE = 0x1f
|
||||
SC_MEMORY_PROTECTION = 0x20
|
||||
SC_MESSAGE_PASSING = 0x21
|
||||
SC_MONOTONIC_CLOCK = 0x4a
|
||||
SC_PRIORITIZED_IO = 0x22
|
||||
SC_PRIORITY_SCHEDULING = 0x23
|
||||
SC_RAW_SOCKETS = 0x77
|
||||
SC_READER_WRITER_LOCKS = 0x4c
|
||||
SC_REALTIME_SIGNALS = 0x24
|
||||
SC_REGEXP = 0x4d
|
||||
SC_SAVED_IDS = 0x7
|
||||
SC_SEMAPHORES = 0x25
|
||||
SC_SHARED_MEMORY_OBJECTS = 0x27
|
||||
SC_SHELL = 0x4e
|
||||
SC_SPAWN = 0x4f
|
||||
SC_SPIN_LOCKS = 0x50
|
||||
SC_SPORADIC_SERVER = 0x51
|
||||
SC_SYNCHRONIZED_IO = 0x28
|
||||
SC_THREAD_ATTR_STACKADDR = 0x52
|
||||
SC_THREAD_ATTR_STACKSIZE = 0x53
|
||||
SC_THREAD_CPUTIME = 0x54
|
||||
SC_THREAD_PRIO_INHERIT = 0x57
|
||||
SC_THREAD_PRIO_PROTECT = 0x58
|
||||
SC_THREAD_PRIORITY_SCHEDULING = 0x59
|
||||
SC_THREAD_PROCESS_SHARED = 0x5a
|
||||
SC_THREAD_SAFE_FUNCTIONS = 0x5b
|
||||
SC_THREAD_SPORADIC_SERVER = 0x5c
|
||||
SC_THREADS = 0x60
|
||||
SC_TIMEOUTS = 0x5f
|
||||
SC_TIMERS = 0x29
|
||||
SC_TRACE = 0x61
|
||||
SC_TRACE_EVENT_FILTER = 0x62
|
||||
SC_TRACE_INHERIT = 0x63
|
||||
SC_TRACE_LOG = 0x64
|
||||
SC_TYPED_MEMORY_OBJECTS = 0x66
|
||||
SC_VERSION = 0x8
|
||||
|
||||
SC_V6_ILP32_OFF32 = 0x67
|
||||
SC_V6_ILP32_OFFBIG = 0x68
|
||||
SC_V6_LP64_OFF64 = 0x69
|
||||
SC_V6_LPBIG_OFFBIG = 0x6a
|
||||
|
||||
SC_2_C_BIND = 0x12
|
||||
SC_2_C_DEV = 0x13
|
||||
SC_2_CHAR_TERM = 0x14
|
||||
SC_2_FORT_DEV = 0x15
|
||||
SC_2_FORT_RUN = 0x16
|
||||
SC_2_LOCALEDEF = 0x17
|
||||
SC_2_PBS = 0x3b
|
||||
SC_2_PBS_ACCOUNTING = 0x3c
|
||||
SC_2_PBS_CHECKPOINT = 0x3d
|
||||
SC_2_PBS_LOCATE = 0x3e
|
||||
SC_2_PBS_MESSAGE = 0x3f
|
||||
SC_2_PBS_TRACK = 0x40
|
||||
SC_2_SW_DEV = 0x18
|
||||
SC_2_UPE = 0x19
|
||||
SC_2_VERSION = 0x11
|
||||
|
||||
SC_XOPEN_CRYPT = 0x6c
|
||||
SC_XOPEN_ENH_I18N = 0x6d
|
||||
SC_XOPEN_REALTIME = 0x6f
|
||||
SC_XOPEN_REALTIME_THREADS = 0x70
|
||||
SC_XOPEN_SHM = 0x71
|
||||
SC_XOPEN_STREAMS = 0x72
|
||||
SC_XOPEN_UNIX = 0x73
|
||||
SC_XOPEN_VERSION = 0x74
|
||||
SC_XOPEN_XCU_VERSION = 0x75
|
||||
|
||||
SC_PHYS_PAGES = 0x79
|
||||
SC_NPROCESSORS_CONF = 0x39
|
||||
SC_NPROCESSORS_ONLN = 0x3a
|
||||
)
|
||||
|
||||
const (
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xa
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_LINE_MAX = 0x800
|
||||
_RE_DUP_MAX = 0xff
|
||||
|
||||
_CLK_TCK = 0x80
|
||||
|
||||
_MAXHOSTNAMELEN = 0x100
|
||||
_MAXLOGNAME = 0x11
|
||||
_MAXSYMLINKS = 0x20
|
||||
_ATEXIT_SIZE = 0x20
|
||||
|
||||
_POSIX_ADVISORY_INFO = -0x1
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x0
|
||||
_POSIX_BARRIERS = 0x30db0
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = -0x1
|
||||
_POSIX_CPUTIME = 0x30db0
|
||||
_POSIX_FSYNC = 0x30db0
|
||||
_POSIX_IPV6 = 0x0
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x30db0
|
||||
_POSIX_MEMLOCK = -0x1
|
||||
_POSIX_MEMLOCK_RANGE = 0x30db0
|
||||
_POSIX_MEMORY_PROTECTION = 0x30db0
|
||||
_POSIX_MESSAGE_PASSING = 0x30db0
|
||||
_POSIX_MONOTONIC_CLOCK = 0x30db0
|
||||
_POSIX_PRIORITIZED_IO = -0x1
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x30db0
|
||||
_POSIX_RAW_SOCKETS = 0x30db0
|
||||
_POSIX_READER_WRITER_LOCKS = 0x30db0
|
||||
_POSIX_REALTIME_SIGNALS = 0x30db0
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SEM_VALUE_MAX = 0x7fff
|
||||
_POSIX_SEMAPHORES = 0x30db0
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x30db0
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SPAWN = 0x30db0
|
||||
_POSIX_SPIN_LOCKS = 0x30db0
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = -0x1
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x30db0
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x30db0
|
||||
_POSIX_THREAD_CPUTIME = 0x30db0
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x30db0
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x30db0
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x30db0
|
||||
_POSIX_THREAD_PROCESS_SHARED = -0x1
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = -0x1
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x30db0
|
||||
_POSIX_TIMEOUTS = 0x30db0
|
||||
_POSIX_TIMERS = 0x30db0
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x30db0
|
||||
|
||||
_V6_ILP32_OFF32 = -0x1
|
||||
_V6_ILP32_OFFBIG = 0x0
|
||||
_V6_LP64_OFF64 = 0x0
|
||||
_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x1
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_PBS = -0x1
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_UPE = 0x31069
|
||||
_POSIX2_VERSION = 0x30a2c
|
||||
|
||||
_XOPEN_CRYPT = -0x1
|
||||
_XOPEN_ENH_I18N = -0x1
|
||||
_XOPEN_REALTIME = -0x1
|
||||
_XOPEN_REALTIME_THREADS = -0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = -0x1
|
||||
|
||||
_PTHREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_PTHREAD_KEYS_MAX = 0x100
|
||||
_PTHREAD_STACK_MIN = 0x4000
|
||||
)
|
||||
|
||||
const (
|
||||
_PC_NAME_MAX = 0x4
|
||||
|
||||
_PATH_DEV = "/dev/"
|
||||
_PATH_ZONEINFO = "/usr/share/zoneinfo"
|
||||
)
|
|
@ -0,0 +1,226 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_defs_freebsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x2a
|
||||
SC_AIO_MAX = 0x2b
|
||||
SC_AIO_PRIO_DELTA_MAX = 0x2c
|
||||
SC_ARG_MAX = 0x1
|
||||
SC_ATEXIT_MAX = 0x6b
|
||||
SC_BC_BASE_MAX = 0x9
|
||||
SC_BC_DIM_MAX = 0xa
|
||||
SC_BC_SCALE_MAX = 0xb
|
||||
SC_BC_STRING_MAX = 0xc
|
||||
SC_CHILD_MAX = 0x2
|
||||
SC_CLK_TCK = 0x3
|
||||
SC_COLL_WEIGHTS_MAX = 0xd
|
||||
SC_DELAYTIMER_MAX = 0x2d
|
||||
SC_EXPR_NEST_MAX = 0xe
|
||||
SC_GETGR_R_SIZE_MAX = 0x46
|
||||
SC_GETPW_R_SIZE_MAX = 0x47
|
||||
SC_HOST_NAME_MAX = 0x48
|
||||
SC_IOV_MAX = 0x38
|
||||
SC_LINE_MAX = 0xf
|
||||
SC_LOGIN_NAME_MAX = 0x49
|
||||
SC_MQ_OPEN_MAX = 0x2e
|
||||
SC_MQ_PRIO_MAX = 0x4b
|
||||
SC_NGROUPS_MAX = 0x4
|
||||
SC_OPEN_MAX = 0x5
|
||||
SC_PAGE_SIZE = 0x2f
|
||||
SC_PAGESIZE = 0x2f
|
||||
SC_RE_DUP_MAX = 0x10
|
||||
SC_RTSIG_MAX = 0x30
|
||||
SC_SEM_NSEMS_MAX = 0x31
|
||||
SC_SEM_VALUE_MAX = 0x32
|
||||
SC_SIGQUEUE_MAX = 0x33
|
||||
SC_STREAM_MAX = 0x1a
|
||||
SC_SYMLOOP_MAX = 0x78
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x55
|
||||
SC_THREAD_KEYS_MAX = 0x56
|
||||
SC_THREAD_STACK_MIN = 0x5d
|
||||
SC_THREAD_THREADS_MAX = 0x5e
|
||||
SC_TIMER_MAX = 0x34
|
||||
SC_TTY_NAME_MAX = 0x65
|
||||
SC_TZNAME_MAX = 0x1b
|
||||
|
||||
SC_ADVISORY_INFO = 0x41
|
||||
SC_ASYNCHRONOUS_IO = 0x1c
|
||||
SC_BARRIERS = 0x42
|
||||
SC_CLOCK_SELECTION = 0x43
|
||||
SC_CPUTIME = 0x44
|
||||
SC_FSYNC = 0x26
|
||||
SC_IPV6 = 0x76
|
||||
SC_JOB_CONTROL = 0x6
|
||||
SC_MAPPED_FILES = 0x1d
|
||||
SC_MEMLOCK = 0x1e
|
||||
SC_MEMLOCK_RANGE = 0x1f
|
||||
SC_MEMORY_PROTECTION = 0x20
|
||||
SC_MESSAGE_PASSING = 0x21
|
||||
SC_MONOTONIC_CLOCK = 0x4a
|
||||
SC_PRIORITIZED_IO = 0x22
|
||||
SC_PRIORITY_SCHEDULING = 0x23
|
||||
SC_RAW_SOCKETS = 0x77
|
||||
SC_READER_WRITER_LOCKS = 0x4c
|
||||
SC_REALTIME_SIGNALS = 0x24
|
||||
SC_REGEXP = 0x4d
|
||||
SC_SAVED_IDS = 0x7
|
||||
SC_SEMAPHORES = 0x25
|
||||
SC_SHARED_MEMORY_OBJECTS = 0x27
|
||||
SC_SHELL = 0x4e
|
||||
SC_SPAWN = 0x4f
|
||||
SC_SPIN_LOCKS = 0x50
|
||||
SC_SPORADIC_SERVER = 0x51
|
||||
SC_SYNCHRONIZED_IO = 0x28
|
||||
SC_THREAD_ATTR_STACKADDR = 0x52
|
||||
SC_THREAD_ATTR_STACKSIZE = 0x53
|
||||
SC_THREAD_CPUTIME = 0x54
|
||||
SC_THREAD_PRIO_INHERIT = 0x57
|
||||
SC_THREAD_PRIO_PROTECT = 0x58
|
||||
SC_THREAD_PRIORITY_SCHEDULING = 0x59
|
||||
SC_THREAD_PROCESS_SHARED = 0x5a
|
||||
SC_THREAD_SAFE_FUNCTIONS = 0x5b
|
||||
SC_THREAD_SPORADIC_SERVER = 0x5c
|
||||
SC_THREADS = 0x60
|
||||
SC_TIMEOUTS = 0x5f
|
||||
SC_TIMERS = 0x29
|
||||
SC_TRACE = 0x61
|
||||
SC_TRACE_EVENT_FILTER = 0x62
|
||||
SC_TRACE_INHERIT = 0x63
|
||||
SC_TRACE_LOG = 0x64
|
||||
SC_TYPED_MEMORY_OBJECTS = 0x66
|
||||
SC_VERSION = 0x8
|
||||
|
||||
SC_V6_ILP32_OFF32 = 0x67
|
||||
SC_V6_ILP32_OFFBIG = 0x68
|
||||
SC_V6_LP64_OFF64 = 0x69
|
||||
SC_V6_LPBIG_OFFBIG = 0x6a
|
||||
|
||||
SC_2_C_BIND = 0x12
|
||||
SC_2_C_DEV = 0x13
|
||||
SC_2_CHAR_TERM = 0x14
|
||||
SC_2_FORT_DEV = 0x15
|
||||
SC_2_FORT_RUN = 0x16
|
||||
SC_2_LOCALEDEF = 0x17
|
||||
SC_2_PBS = 0x3b
|
||||
SC_2_PBS_ACCOUNTING = 0x3c
|
||||
SC_2_PBS_CHECKPOINT = 0x3d
|
||||
SC_2_PBS_LOCATE = 0x3e
|
||||
SC_2_PBS_MESSAGE = 0x3f
|
||||
SC_2_PBS_TRACK = 0x40
|
||||
SC_2_SW_DEV = 0x18
|
||||
SC_2_UPE = 0x19
|
||||
SC_2_VERSION = 0x11
|
||||
|
||||
SC_XOPEN_CRYPT = 0x6c
|
||||
SC_XOPEN_ENH_I18N = 0x6d
|
||||
SC_XOPEN_REALTIME = 0x6f
|
||||
SC_XOPEN_REALTIME_THREADS = 0x70
|
||||
SC_XOPEN_SHM = 0x71
|
||||
SC_XOPEN_STREAMS = 0x72
|
||||
SC_XOPEN_UNIX = 0x73
|
||||
SC_XOPEN_VERSION = 0x74
|
||||
SC_XOPEN_XCU_VERSION = 0x75
|
||||
|
||||
SC_PHYS_PAGES = 0x79
|
||||
SC_NPROCESSORS_CONF = 0x39
|
||||
SC_NPROCESSORS_ONLN = 0x3a
|
||||
)
|
||||
|
||||
const (
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xa
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_LINE_MAX = 0x800
|
||||
_MQ_PRIO_MAX = 0x40
|
||||
_RE_DUP_MAX = 0xff
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
|
||||
_CLK_TCK = 0x80
|
||||
|
||||
_MAXHOSTNAMELEN = 0x100
|
||||
_MAXLOGNAME = 0x21
|
||||
_MAXSYMLINKS = 0x20
|
||||
_ATEXIT_SIZE = 0x20
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x30db0
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x30db0
|
||||
_POSIX_BARRIERS = 0x30db0
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = -0x1
|
||||
_POSIX_CPUTIME = 0x30db0
|
||||
_POSIX_FSYNC = 0x30db0
|
||||
_POSIX_IPV6 = 0x0
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x30db0
|
||||
_POSIX_MEMLOCK = -0x1
|
||||
_POSIX_MEMLOCK_RANGE = 0x30db0
|
||||
_POSIX_MEMORY_PROTECTION = 0x30db0
|
||||
_POSIX_MESSAGE_PASSING = 0x30db0
|
||||
_POSIX_MONOTONIC_CLOCK = 0x30db0
|
||||
_POSIX_PRIORITIZED_IO = -0x1
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x0
|
||||
_POSIX_RAW_SOCKETS = 0x30db0
|
||||
_POSIX_READER_WRITER_LOCKS = 0x30db0
|
||||
_POSIX_REALTIME_SIGNALS = 0x30db0
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SEM_VALUE_MAX = 0x7fff
|
||||
_POSIX_SEMAPHORES = 0x30db0
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x30db0
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SPAWN = 0x30db0
|
||||
_POSIX_SPIN_LOCKS = 0x30db0
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = -0x1
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x30db0
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x30db0
|
||||
_POSIX_THREAD_CPUTIME = 0x30db0
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x30db0
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x30db0
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x30db0
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x30db0
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = -0x1
|
||||
_POSIX_THREADS = 0x30db0
|
||||
_POSIX_TIMEOUTS = 0x30db0
|
||||
_POSIX_TIMERS = 0x30db0
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x30db0
|
||||
|
||||
_V6_ILP32_OFF32 = -0x1
|
||||
_V6_ILP32_OFFBIG = 0x0
|
||||
_V6_LP64_OFF64 = 0x0
|
||||
_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x30db0
|
||||
_POSIX2_C_DEV = -0x1
|
||||
_POSIX2_CHAR_TERM = 0x1
|
||||
_POSIX2_LOCALEDEF = -0x1
|
||||
_POSIX2_PBS = -0x1
|
||||
_POSIX2_SW_DEV = -0x1
|
||||
_POSIX2_UPE = 0x30db0
|
||||
_POSIX2_VERSION = 0x30a2c
|
||||
|
||||
_XOPEN_CRYPT = -0x1
|
||||
_XOPEN_ENH_I18N = -0x1
|
||||
_XOPEN_REALTIME = -0x1
|
||||
_XOPEN_REALTIME_THREADS = -0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = -0x1
|
||||
|
||||
_PTHREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_PTHREAD_KEYS_MAX = 0x100
|
||||
_PTHREAD_STACK_MIN = 0x800
|
||||
)
|
||||
|
||||
const (
|
||||
_PC_NAME_MAX = 0x4
|
||||
|
||||
_PATH_DEV = "/dev/"
|
||||
_PATH_ZONEINFO = "/usr/share/zoneinfo"
|
||||
)
|
|
@ -0,0 +1,144 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_defs_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x17
|
||||
SC_AIO_MAX = 0x18
|
||||
SC_AIO_PRIO_DELTA_MAX = 0x19
|
||||
SC_ARG_MAX = 0x0
|
||||
SC_ATEXIT_MAX = 0x57
|
||||
SC_BC_BASE_MAX = 0x24
|
||||
SC_BC_DIM_MAX = 0x25
|
||||
SC_BC_SCALE_MAX = 0x26
|
||||
SC_BC_STRING_MAX = 0x27
|
||||
SC_CHILD_MAX = 0x1
|
||||
SC_CLK_TCK = 0x2
|
||||
SC_COLL_WEIGHTS_MAX = 0x28
|
||||
SC_DELAYTIMER_MAX = 0x1a
|
||||
SC_EXPR_NEST_MAX = 0x2a
|
||||
SC_GETGR_R_SIZE_MAX = 0x45
|
||||
SC_GETPW_R_SIZE_MAX = 0x46
|
||||
SC_HOST_NAME_MAX = 0xb4
|
||||
SC_IOV_MAX = 0x3c
|
||||
SC_LINE_MAX = 0x2b
|
||||
SC_LOGIN_NAME_MAX = 0x47
|
||||
SC_MQ_OPEN_MAX = 0x1b
|
||||
SC_MQ_PRIO_MAX = 0x1c
|
||||
SC_NGROUPS_MAX = 0x3
|
||||
SC_OPEN_MAX = 0x4
|
||||
SC_PAGE_SIZE = 0x1e
|
||||
SC_PAGESIZE = 0x1e
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x49
|
||||
SC_THREAD_KEYS_MAX = 0x4a
|
||||
SC_THREAD_STACK_MIN = 0x4b
|
||||
SC_THREAD_THREADS_MAX = 0x4c
|
||||
SC_RE_DUP_MAX = 0x2c
|
||||
SC_RTSIG_MAX = 0x1f
|
||||
SC_SEM_NSEMS_MAX = 0x20
|
||||
SC_SEM_VALUE_MAX = 0x21
|
||||
SC_SIGQUEUE_MAX = 0x22
|
||||
SC_STREAM_MAX = 0x5
|
||||
SC_SYMLOOP_MAX = 0xad
|
||||
SC_TIMER_MAX = 0x23
|
||||
SC_TTY_NAME_MAX = 0x48
|
||||
SC_TZNAME_MAX = 0x6
|
||||
|
||||
SC_ADVISORY_INFO = 0x84
|
||||
SC_ASYNCHRONOUS_IO = 0xc
|
||||
SC_BARRIERS = 0x85
|
||||
SC_CLOCK_SELECTION = 0x89
|
||||
SC_CPUTIME = 0x8a
|
||||
SC_FSYNC = 0xf
|
||||
SC_IPV6 = 0xeb
|
||||
SC_JOB_CONTROL = 0x7
|
||||
SC_MAPPED_FILES = 0x10
|
||||
SC_MEMLOCK = 0x11
|
||||
SC_MEMLOCK_RANGE = 0x12
|
||||
SC_MEMORY_PROTECTION = 0x13
|
||||
SC_MESSAGE_PASSING = 0x14
|
||||
SC_MONOTONIC_CLOCK = 0x95
|
||||
SC_PRIORITIZED_IO = 0xd
|
||||
SC_PRIORITY_SCHEDULING = 0xa
|
||||
SC_RAW_SOCKETS = 0xec
|
||||
SC_READER_WRITER_LOCKS = 0x99
|
||||
SC_REALTIME_SIGNALS = 0x9
|
||||
SC_REGEXP = 0x9b
|
||||
SC_SAVED_IDS = 0x8
|
||||
SC_SEMAPHORES = 0x15
|
||||
SC_SHARED_MEMORY_OBJECTS = 0x16
|
||||
SC_SHELL = 0x9d
|
||||
SC_SPAWN = 0x9f
|
||||
SC_SPIN_LOCKS = 0x9a
|
||||
SC_SPORADIC_SERVER = 0xa0
|
||||
SC_SS_REPL_MAX = 0xf1
|
||||
SC_SYNCHRONIZED_IO = 0xe
|
||||
SC_THREAD_ATTR_STACKADDR = 0x4d
|
||||
SC_THREAD_ATTR_STACKSIZE = 0x4e
|
||||
SC_THREAD_CPUTIME = 0x8b
|
||||
SC_THREAD_PRIO_INHERIT = 0x50
|
||||
SC_THREAD_PRIO_PROTECT = 0x51
|
||||
SC_THREAD_PRIORITY_SCHEDULING = 0x4f
|
||||
SC_THREAD_PROCESS_SHARED = 0x52
|
||||
SC_THREAD_ROBUST_PRIO_INHERIT = 0xf7
|
||||
SC_THREAD_ROBUST_PRIO_PROTECT = 0xf8
|
||||
SC_THREAD_SAFE_FUNCTIONS = 0x44
|
||||
SC_THREAD_SPORADIC_SERVER = 0xa1
|
||||
SC_THREADS = 0x43
|
||||
SC_TIMEOUTS = 0xa4
|
||||
SC_TIMERS = 0xb
|
||||
SC_TRACE = 0xb5
|
||||
SC_TRACE_EVENT_FILTER = 0xb6
|
||||
SC_TRACE_EVENT_NAME_MAX = 0xf2
|
||||
SC_TRACE_INHERIT = 0xb7
|
||||
SC_TRACE_LOG = 0xb8
|
||||
SC_TRACE_NAME_MAX = 0xf3
|
||||
SC_TRACE_SYS_MAX = 0xf4
|
||||
SC_TRACE_USER_EVENT_MAX = 0xf5
|
||||
SC_TYPED_MEMORY_OBJECTS = 0xa5
|
||||
SC_VERSION = 0x1d
|
||||
|
||||
SC_V7_ILP32_OFF32 = 0xed
|
||||
SC_V7_ILP32_OFFBIG = 0xee
|
||||
SC_V7_LP64_OFF64 = 0xef
|
||||
SC_V7_LPBIG_OFFBIG = 0xf0
|
||||
|
||||
SC_V6_ILP32_OFF32 = 0xb0
|
||||
SC_V6_ILP32_OFFBIG = 0xb1
|
||||
SC_V6_LP64_OFF64 = 0xb2
|
||||
SC_V6_LPBIG_OFFBIG = 0xb3
|
||||
|
||||
SC_2_C_BIND = 0x2f
|
||||
SC_2_C_DEV = 0x30
|
||||
SC_2_C_VERSION = 0x60
|
||||
SC_2_CHAR_TERM = 0x5f
|
||||
SC_2_FORT_DEV = 0x31
|
||||
SC_2_FORT_RUN = 0x32
|
||||
SC_2_LOCALEDEF = 0x34
|
||||
SC_2_PBS = 0xa8
|
||||
SC_2_PBS_ACCOUNTING = 0xa9
|
||||
SC_2_PBS_CHECKPOINT = 0xaf
|
||||
SC_2_PBS_LOCATE = 0xaa
|
||||
SC_2_PBS_MESSAGE = 0xab
|
||||
SC_2_PBS_TRACK = 0xac
|
||||
SC_2_SW_DEV = 0x33
|
||||
SC_2_UPE = 0x61
|
||||
SC_2_VERSION = 0x2e
|
||||
|
||||
SC_XOPEN_CRYPT = 0x5c
|
||||
SC_XOPEN_ENH_I18N = 0x5d
|
||||
SC_XOPEN_REALTIME = 0x82
|
||||
SC_XOPEN_REALTIME_THREADS = 0x83
|
||||
SC_XOPEN_SHM = 0x5e
|
||||
SC_XOPEN_STREAMS = 0xf6
|
||||
SC_XOPEN_UNIX = 0x5b
|
||||
SC_XOPEN_VERSION = 0x59
|
||||
SC_XOPEN_XCU_VERSION = 0x5a
|
||||
|
||||
SC_PHYS_PAGES = 0x55
|
||||
SC_AVPHYS_PAGES = 0x56
|
||||
SC_NPROCESSORS_CONF = 0x53
|
||||
SC_NPROCESSORS_ONLN = 0x54
|
||||
SC_UIO_MAXIOV = 0x3c
|
||||
)
|
|
@ -0,0 +1,94 @@
|
|||
// Created by cgo -godefs - DO NOT EDIT
|
||||
// cgo -godefs sysconf_defs_netbsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x33
|
||||
SC_AIO_MAX = 0x34
|
||||
SC_ARG_MAX = 0x1
|
||||
SC_ATEXIT_MAX = 0x28
|
||||
SC_BC_BASE_MAX = 0x9
|
||||
SC_BC_DIM_MAX = 0xa
|
||||
SC_BC_SCALE_MAX = 0xb
|
||||
SC_BC_STRING_MAX = 0xc
|
||||
SC_CHILD_MAX = 0x2
|
||||
SC_CLK_TCK = 0x27
|
||||
SC_COLL_WEIGHTS_MAX = 0xd
|
||||
SC_EXPR_NEST_MAX = 0xe
|
||||
SC_HOST_NAME_MAX = 0x45
|
||||
SC_IOV_MAX = 0x20
|
||||
SC_LINE_MAX = 0xf
|
||||
SC_LOGIN_NAME_MAX = 0x25
|
||||
SC_MQ_OPEN_MAX = 0x36
|
||||
SC_MQ_PRIO_MAX = 0x37
|
||||
SC_NGROUPS_MAX = 0x4
|
||||
SC_OPEN_MAX = 0x5
|
||||
SC_PAGE_SIZE = 0x1c
|
||||
SC_PAGESIZE = 0x1c
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x39
|
||||
SC_THREAD_KEYS_MAX = 0x3a
|
||||
SC_THREAD_STACK_MIN = 0x3b
|
||||
SC_THREAD_THREADS_MAX = 0x3c
|
||||
SC_RE_DUP_MAX = 0x10
|
||||
SC_STREAM_MAX = 0x1a
|
||||
SC_SYMLOOP_MAX = 0x49
|
||||
SC_TTY_NAME_MAX = 0x44
|
||||
SC_TZNAME_MAX = 0x1b
|
||||
|
||||
SC_ASYNCHRONOUS_IO = 0x32
|
||||
SC_BARRIERS = 0x2b
|
||||
SC_FSYNC = 0x1d
|
||||
SC_JOB_CONTROL = 0x6
|
||||
SC_MAPPED_FILES = 0x21
|
||||
SC_SEMAPHORES = 0x2a
|
||||
SC_SHELL = 0x48
|
||||
SC_THREADS = 0x29
|
||||
SC_TIMERS = 0x2c
|
||||
SC_VERSION = 0x8
|
||||
|
||||
SC_2_VERSION = 0x11
|
||||
SC_2_C_DEV = 0x13
|
||||
SC_2_FORT_DEV = 0x15
|
||||
SC_2_FORT_RUN = 0x16
|
||||
SC_2_LOCALEDEF = 0x17
|
||||
SC_2_SW_DEV = 0x18
|
||||
SC_2_UPE = 0x19
|
||||
|
||||
SC_PHYS_PAGES = 0x79
|
||||
SC_MONOTONIC_CLOCK = 0x26
|
||||
SC_NPROCESSORS_CONF = 0x3e9
|
||||
SC_NPROCESSORS_ONLN = 0x3ea
|
||||
)
|
||||
|
||||
const (
|
||||
_MAXHOSTNAMELEN = 0x100
|
||||
_MAXLOGNAME = 0x10
|
||||
_MAXSYMLINKS = 0x20
|
||||
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_KEYS_MAX = 0x100
|
||||
_POSIX_VERSION = 0x30db0
|
||||
|
||||
_POSIX2_VERSION = 0x30db0
|
||||
|
||||
_FOPEN_MAX = 0x14
|
||||
_NAME_MAX = 0x1ff
|
||||
_RE_DUP_MAX = 0xff
|
||||
|
||||
_BC_BASE_MAX = 0x7fffffff
|
||||
_BC_DIM_MAX = 0xffff
|
||||
_BC_SCALE_MAX = 0x7fffffff
|
||||
_BC_STRING_MAX = 0x7fffffff
|
||||
_COLL_WEIGHTS_MAX = 0x2
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_LINE_MAX = 0x800
|
||||
|
||||
_PATH_DEV = "/dev/"
|
||||
_PATH_ZONEINFO = "/usr/share/zoneinfo"
|
||||
)
|
||||
|
||||
const _PC_NAME_MAX = 0x4
|
|
@ -0,0 +1,260 @@
|
|||
// Created by cgo -godefs - DO NOT EDIT
|
||||
// cgo -godefs sysconf_defs_openbsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x2a
|
||||
SC_AIO_MAX = 0x2b
|
||||
SC_AIO_PRIO_DELTA_MAX = 0x2c
|
||||
SC_ARG_MAX = 0x1
|
||||
SC_ATEXIT_MAX = 0x2e
|
||||
SC_BC_BASE_MAX = 0x9
|
||||
SC_BC_DIM_MAX = 0xa
|
||||
SC_BC_SCALE_MAX = 0xb
|
||||
SC_BC_STRING_MAX = 0xc
|
||||
SC_CHILD_MAX = 0x2
|
||||
SC_CLK_TCK = 0x3
|
||||
SC_COLL_WEIGHTS_MAX = 0xd
|
||||
SC_DELAYTIMER_MAX = 0x32
|
||||
SC_EXPR_NEST_MAX = 0xe
|
||||
SC_GETGR_R_SIZE_MAX = 0x64
|
||||
SC_GETPW_R_SIZE_MAX = 0x65
|
||||
SC_HOST_NAME_MAX = 0x21
|
||||
SC_IOV_MAX = 0x33
|
||||
SC_LINE_MAX = 0xf
|
||||
SC_LOGIN_NAME_MAX = 0x66
|
||||
SC_MQ_OPEN_MAX = 0x3a
|
||||
SC_MQ_PRIO_MAX = 0x3b
|
||||
SC_NGROUPS_MAX = 0x4
|
||||
SC_OPEN_MAX = 0x5
|
||||
SC_PAGE_SIZE = 0x1c
|
||||
SC_PAGESIZE = 0x1c
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x50
|
||||
SC_THREAD_KEYS_MAX = 0x51
|
||||
SC_THREAD_STACK_MIN = 0x59
|
||||
SC_THREAD_THREADS_MAX = 0x5a
|
||||
SC_RE_DUP_MAX = 0x10
|
||||
SC_SEM_NSEMS_MAX = 0x1f
|
||||
SC_SEM_VALUE_MAX = 0x20
|
||||
SC_SIGQUEUE_MAX = 0x46
|
||||
SC_STREAM_MAX = 0x1a
|
||||
SC_SYMLOOP_MAX = 0x4c
|
||||
SC_TIMER_MAX = 0x5d
|
||||
SC_TTY_NAME_MAX = 0x6b
|
||||
SC_TZNAME_MAX = 0x1b
|
||||
|
||||
SC_ADVISORY_INFO = 0x29
|
||||
SC_ASYNCHRONOUS_IO = 0x2d
|
||||
SC_BARRIERS = 0x2f
|
||||
SC_CLOCK_SELECTION = 0x30
|
||||
SC_CPUTIME = 0x31
|
||||
SC_FSYNC = 0x1d
|
||||
SC_IPV6 = 0x34
|
||||
SC_JOB_CONTROL = 0x6
|
||||
SC_MAPPED_FILES = 0x35
|
||||
SC_MEMLOCK = 0x36
|
||||
SC_MEMLOCK_RANGE = 0x37
|
||||
SC_MEMORY_PROTECTION = 0x38
|
||||
SC_MESSAGE_PASSING = 0x39
|
||||
SC_MONOTONIC_CLOCK = 0x22
|
||||
SC_PRIORITIZED_IO = 0x3c
|
||||
SC_PRIORITY_SCHEDULING = 0x3d
|
||||
SC_RAW_SOCKETS = 0x3e
|
||||
SC_READER_WRITER_LOCKS = 0x3f
|
||||
SC_REALTIME_SIGNALS = 0x40
|
||||
SC_REGEXP = 0x41
|
||||
SC_SAVED_IDS = 0x7
|
||||
SC_SEMAPHORES = 0x43
|
||||
SC_SHARED_MEMORY_OBJECTS = 0x44
|
||||
SC_SHELL = 0x45
|
||||
SC_SPAWN = 0x47
|
||||
SC_SPIN_LOCKS = 0x48
|
||||
SC_SPORADIC_SERVER = 0x49
|
||||
SC_SS_REPL_MAX = 0x4a
|
||||
SC_SYNCHRONIZED_IO = 0x4b
|
||||
SC_THREAD_ATTR_STACKADDR = 0x4d
|
||||
SC_THREAD_ATTR_STACKSIZE = 0x4e
|
||||
SC_THREAD_CPUTIME = 0x4f
|
||||
SC_THREAD_PRIO_INHERIT = 0x52
|
||||
SC_THREAD_PRIO_PROTECT = 0x53
|
||||
SC_THREAD_PRIORITY_SCHEDULING = 0x54
|
||||
SC_THREAD_PROCESS_SHARED = 0x55
|
||||
SC_THREAD_ROBUST_PRIO_INHERIT = 0x56
|
||||
SC_THREAD_ROBUST_PRIO_PROTECT = 0x57
|
||||
SC_THREAD_SAFE_FUNCTIONS = 0x67
|
||||
SC_THREAD_SPORADIC_SERVER = 0x58
|
||||
SC_THREADS = 0x5b
|
||||
SC_TIMEOUTS = 0x5c
|
||||
SC_TIMERS = 0x5e
|
||||
SC_TRACE = 0x5f
|
||||
SC_TRACE_EVENT_FILTER = 0x60
|
||||
SC_TRACE_EVENT_NAME_MAX = 0x61
|
||||
SC_TRACE_INHERIT = 0x62
|
||||
SC_TRACE_LOG = 0x63
|
||||
SC_TRACE_NAME_MAX = 0x68
|
||||
SC_TRACE_SYS_MAX = 0x69
|
||||
SC_TRACE_USER_EVENT_MAX = 0x6a
|
||||
SC_TYPED_MEMORY_OBJECTS = 0x6c
|
||||
SC_VERSION = 0x8
|
||||
|
||||
SC_V7_ILP32_OFF32 = 0x71
|
||||
SC_V7_ILP32_OFFBIG = 0x72
|
||||
SC_V7_LP64_OFF64 = 0x73
|
||||
SC_V7_LPBIG_OFFBIG = 0x74
|
||||
|
||||
SC_V6_ILP32_OFF32 = 0x6d
|
||||
SC_V6_ILP32_OFFBIG = 0x6e
|
||||
SC_V6_LP64_OFF64 = 0x6f
|
||||
SC_V6_LPBIG_OFFBIG = 0x70
|
||||
|
||||
SC_2_C_BIND = 0x12
|
||||
SC_2_C_DEV = 0x13
|
||||
SC_2_CHAR_TERM = 0x14
|
||||
SC_2_FORT_DEV = 0x15
|
||||
SC_2_FORT_RUN = 0x16
|
||||
SC_2_LOCALEDEF = 0x17
|
||||
SC_2_PBS = 0x23
|
||||
SC_2_PBS_ACCOUNTING = 0x24
|
||||
SC_2_PBS_CHECKPOINT = 0x25
|
||||
SC_2_PBS_LOCATE = 0x26
|
||||
SC_2_PBS_MESSAGE = 0x27
|
||||
SC_2_PBS_TRACK = 0x28
|
||||
SC_2_SW_DEV = 0x18
|
||||
SC_2_UPE = 0x19
|
||||
SC_2_VERSION = 0x11
|
||||
|
||||
SC_XOPEN_CRYPT = 0x75
|
||||
SC_XOPEN_ENH_I18N = 0x76
|
||||
SC_XOPEN_REALTIME = 0x78
|
||||
SC_XOPEN_REALTIME_THREADS = 0x79
|
||||
SC_XOPEN_SHM = 0x1e
|
||||
SC_XOPEN_STREAMS = 0x7a
|
||||
SC_XOPEN_UNIX = 0x7b
|
||||
SC_XOPEN_UUCP = 0x7c
|
||||
SC_XOPEN_VERSION = 0x7d
|
||||
|
||||
SC_AVPHYS_PAGES = 0x1f5
|
||||
SC_PHYS_PAGES = 0x1f4
|
||||
SC_NPROCESSORS_CONF = 0x1f6
|
||||
SC_NPROCESSORS_ONLN = 0x1f7
|
||||
)
|
||||
|
||||
const (
|
||||
_HOST_NAME_MAX = 0xff
|
||||
_IOV_MAX = 0x400
|
||||
_LOGIN_NAME_MAX = 0x20
|
||||
_PTHREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_PTHREAD_KEYS_MAX = 0x100
|
||||
_PTHREAD_STACK_MIN = 0x1000
|
||||
_PTHREAD_THREADS_MAX = 0xffffffffffffffff
|
||||
_SEM_VALUE_MAX = 0xffffffff
|
||||
_SYMLOOP_MAX = 0x20
|
||||
_TTY_NAME_MAX = 0x104
|
||||
|
||||
_GR_BUF_LEN = 0xa40
|
||||
_PW_BUF_LEN = 0x400
|
||||
|
||||
_CLK_TCK = 0x64
|
||||
|
||||
_POSIX_ADVISORY_INFO = -0x1
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = -0x1
|
||||
_POSIX_BARRIERS = 0x30db0
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = -0x1
|
||||
_POSIX_CPUTIME = 0x31069
|
||||
_POSIX_FSYNC = 0x30db0
|
||||
_POSIX_IPV6 = 0x0
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x30db0
|
||||
_POSIX_MEMLOCK = 0x30db0
|
||||
_POSIX_MEMLOCK_RANGE = 0x30db0
|
||||
_POSIX_MEMORY_PROTECTION = 0x30db0
|
||||
_POSIX_MESSAGE_PASSING = -0x1
|
||||
_POSIX_MONOTONIC_CLOCK = 0x30db0
|
||||
_POSIX_PRIORITIZED_IO = -0x1
|
||||
_POSIX_PRIORITY_SCHEDULING = -0x1
|
||||
_POSIX_RAW_SOCKETS = 0x30db0
|
||||
_POSIX_READER_WRITER_LOCKS = 0x30db0
|
||||
_POSIX_REALTIME_SIGNALS = -0x1
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x30db0
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SPAWN = 0x30db0
|
||||
_POSIX_SPIN_LOCKS = 0x30db0
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = -0x1
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x30db0
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x30db0
|
||||
_POSIX_THREAD_CPUTIME = 0x31069
|
||||
_POSIX_THREAD_KEYS_MAX = 0x80
|
||||
_POSIX_THREAD_PRIO_INHERIT = -0x1
|
||||
_POSIX_THREAD_PRIO_PROTECT = -0x1
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = -0x1
|
||||
_POSIX_THREAD_PROCESS_SHARED = -0x1
|
||||
_POSIX_THREAD_ROBUST_PRIO_INHERIT = -0x1
|
||||
_POSIX_THREAD_ROBUST_PRIO_PROTECT = -0x1
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x30db0
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x30db0
|
||||
_POSIX_TIMERS = -0x1
|
||||
_POSIX_TIMEOUTS = 0x30db0
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = 0x0
|
||||
_POSIX_V7_LP64_OFF64 = 0x0
|
||||
_POSIX_V7_LPBIG_OFFBIG = 0x0
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = 0x0
|
||||
_POSIX_V6_LP64_OFF64 = 0x0
|
||||
_POSIX_V6_LPBIG_OFFBIG = 0x0
|
||||
|
||||
_POSIX2_C_BIND = 0x30db0
|
||||
_POSIX2_C_DEV = -0x1
|
||||
_POSIX2_CHAR_TERM = 0x1
|
||||
_POSIX2_LOCALEDEF = -0x1
|
||||
_POSIX2_PBS = -0x1
|
||||
_POSIX2_SW_DEV = 0x30db0
|
||||
_POSIX2_UPE = 0x30db0
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_CRYPT = 0x1
|
||||
_XOPEN_ENH_I18N = -0x1
|
||||
_XOPEN_REALTIME = -0x1
|
||||
_XOPEN_REALTIME_THREADS = -0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_STREAMS = -0x1
|
||||
_XOPEN_UNIX = -0x1
|
||||
_XOPEN_UUCP = -0x1
|
||||
|
||||
_FOPEN_MAX = 0x14
|
||||
_NAME_MAX = 0xff
|
||||
_RE_DUP_MAX = 0xff
|
||||
|
||||
_BC_BASE_MAX = 0x7fffffff
|
||||
_BC_DIM_MAX = 0xffff
|
||||
_BC_SCALE_MAX = 0x7fffffff
|
||||
_BC_STRING_MAX = 0x7fffffff
|
||||
_COLL_WEIGHTS_MAX = 0x2
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_LINE_MAX = 0x800
|
||||
|
||||
_SHRT_MAX = 0x7fff
|
||||
|
||||
_PATH_ZONEINFO = "/usr/share/zoneinfo"
|
||||
)
|
||||
|
||||
const (
|
||||
_CHAR_BIT = 0x8
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
sizeofOffT = 0x8
|
||||
)
|
|
@ -0,0 +1,136 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_defs_solaris.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
SC_AIO_LISTIO_MAX = 0x12
|
||||
SC_AIO_MAX = 0x13
|
||||
SC_AIO_PRIO_DELTA_MAX = 0x14
|
||||
SC_ARG_MAX = 0x1
|
||||
SC_ATEXIT_MAX = 0x4c
|
||||
SC_BC_BASE_MAX = 0x36
|
||||
SC_BC_DIM_MAX = 0x37
|
||||
SC_BC_SCALE_MAX = 0x38
|
||||
SC_BC_STRING_MAX = 0x39
|
||||
SC_CHILD_MAX = 0x2
|
||||
SC_CLK_TCK = 0x3
|
||||
SC_COLL_WEIGHTS_MAX = 0x3a
|
||||
SC_DELAYTIMER_MAX = 0x16
|
||||
SC_EXPR_NEST_MAX = 0x3b
|
||||
SC_GETGR_R_SIZE_MAX = 0x239
|
||||
SC_GETPW_R_SIZE_MAX = 0x23a
|
||||
SC_HOST_NAME_MAX = 0x2df
|
||||
SC_IOV_MAX = 0x4d
|
||||
SC_LINE_MAX = 0x3c
|
||||
SC_LOGIN_NAME_MAX = 0x23b
|
||||
SC_MQ_OPEN_MAX = 0x1d
|
||||
SC_MQ_PRIO_MAX = 0x1e
|
||||
SC_NGROUPS_MAX = 0x4
|
||||
SC_OPEN_MAX = 0x5
|
||||
SC_PAGE_SIZE = 0xb
|
||||
SC_PAGESIZE = 0xb
|
||||
SC_THREAD_DESTRUCTOR_ITERATIONS = 0x238
|
||||
SC_THREAD_KEYS_MAX = 0x23c
|
||||
SC_THREAD_STACK_MIN = 0x23d
|
||||
SC_THREAD_THREADS_MAX = 0x23e
|
||||
SC_RE_DUP_MAX = 0x3d
|
||||
SC_RTSIG_MAX = 0x22
|
||||
SC_SEM_NSEMS_MAX = 0x24
|
||||
SC_SEM_VALUE_MAX = 0x25
|
||||
SC_SIGQUEUE_MAX = 0x27
|
||||
SC_STREAM_MAX = 0x10
|
||||
SC_SYMLOOP_MAX = 0x2e8
|
||||
SC_TIMER_MAX = 0x2c
|
||||
SC_TTY_NAME_MAX = 0x23f
|
||||
SC_TZNAME_MAX = 0x11
|
||||
|
||||
SC_ADVISORY_INFO = 0x2db
|
||||
SC_ASYNCHRONOUS_IO = 0x15
|
||||
SC_BARRIERS = 0x2dc
|
||||
SC_CLOCK_SELECTION = 0x2dd
|
||||
SC_CPUTIME = 0x2de
|
||||
SC_FSYNC = 0x17
|
||||
SC_IPV6 = 0x2fa
|
||||
SC_JOB_CONTROL = 0x6
|
||||
SC_MAPPED_FILES = 0x18
|
||||
SC_MEMLOCK = 0x19
|
||||
SC_MEMLOCK_RANGE = 0x1a
|
||||
SC_MEMORY_PROTECTION = 0x1b
|
||||
SC_MESSAGE_PASSING = 0x1c
|
||||
SC_MONOTONIC_CLOCK = 0x2e0
|
||||
SC_PRIORITIZED_IO = 0x1f
|
||||
SC_PRIORITY_SCHEDULING = 0x20
|
||||
SC_RAW_SOCKETS = 0x2fb
|
||||
SC_READER_WRITER_LOCKS = 0x2e1
|
||||
SC_REALTIME_SIGNALS = 0x21
|
||||
SC_REGEXP = 0x2e2
|
||||
SC_SAVED_IDS = 0x7
|
||||
SC_SEMAPHORES = 0x23
|
||||
SC_SHARED_MEMORY_OBJECTS = 0x26
|
||||
SC_SHELL = 0x2e3
|
||||
SC_SPAWN = 0x2e4
|
||||
SC_SPIN_LOCKS = 0x2e5
|
||||
SC_SPORADIC_SERVER = 0x2e6
|
||||
SC_SS_REPL_MAX = 0x2e7
|
||||
SC_SYNCHRONIZED_IO = 0x2a
|
||||
SC_THREAD_ATTR_STACKADDR = 0x241
|
||||
SC_THREAD_ATTR_STACKSIZE = 0x242
|
||||
SC_THREAD_CPUTIME = 0x2e9
|
||||
SC_THREAD_PRIO_INHERIT = 0x244
|
||||
SC_THREAD_PRIO_PROTECT = 0x245
|
||||
SC_THREAD_PRIORITY_SCHEDULING = 0x243
|
||||
SC_THREAD_PROCESS_SHARED = 0x246
|
||||
SC_THREAD_SAFE_FUNCTIONS = 0x247
|
||||
SC_THREAD_SPORADIC_SERVER = 0x2ea
|
||||
SC_THREADS = 0x240
|
||||
SC_TIMEOUTS = 0x2eb
|
||||
SC_TIMERS = 0x2b
|
||||
SC_TRACE = 0x2ec
|
||||
SC_TRACE_EVENT_FILTER = 0x2ed
|
||||
SC_TRACE_EVENT_NAME_MAX = 0x2ee
|
||||
SC_TRACE_INHERIT = 0x2ef
|
||||
SC_TRACE_LOG = 0x2f0
|
||||
SC_TRACE_NAME_MAX = 0x2f1
|
||||
SC_TRACE_SYS_MAX = 0x2f2
|
||||
SC_TRACE_USER_EVENT_MAX = 0x2f3
|
||||
SC_TYPED_MEMORY_OBJECTS = 0x2f4
|
||||
SC_VERSION = 0x8
|
||||
|
||||
SC_V6_ILP32_OFF32 = 0x2f5
|
||||
SC_V6_ILP32_OFFBIG = 0x2f6
|
||||
SC_V6_LP64_OFF64 = 0x2f7
|
||||
SC_V6_LPBIG_OFFBIG = 0x2f8
|
||||
|
||||
SC_2_C_BIND = 0x2d
|
||||
SC_2_C_DEV = 0x2e
|
||||
SC_2_C_VERSION = 0x2f
|
||||
SC_2_CHAR_TERM = 0x42
|
||||
SC_2_FORT_DEV = 0x30
|
||||
SC_2_FORT_RUN = 0x31
|
||||
SC_2_LOCALEDEF = 0x32
|
||||
SC_2_PBS = 0x2d4
|
||||
SC_2_PBS_ACCOUNTING = 0x2d5
|
||||
SC_2_PBS_CHECKPOINT = 0x2d6
|
||||
SC_2_PBS_LOCATE = 0x2d8
|
||||
SC_2_PBS_MESSAGE = 0x2d9
|
||||
SC_2_PBS_TRACK = 0x2da
|
||||
SC_2_SW_DEV = 0x33
|
||||
SC_2_UPE = 0x34
|
||||
SC_2_VERSION = 0x35
|
||||
|
||||
SC_XOPEN_CRYPT = 0x3e
|
||||
SC_XOPEN_ENH_I18N = 0x3f
|
||||
SC_XOPEN_REALTIME = 0x2ce
|
||||
SC_XOPEN_REALTIME_THREADS = 0x2cf
|
||||
SC_XOPEN_SHM = 0x40
|
||||
SC_XOPEN_STREAMS = 0x2f9
|
||||
SC_XOPEN_UNIX = 0x4e
|
||||
SC_XOPEN_VERSION = 0xc
|
||||
SC_XOPEN_XCU_VERSION = 0x43
|
||||
|
||||
SC_PHYS_PAGES = 0x1f4
|
||||
SC_AVPHYS_PAGES = 0x1f5
|
||||
SC_NPROCESSORS_CONF = 0xe
|
||||
SC_NPROCESSORS_ONLN = 0xf
|
||||
)
|
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_386.go
generated
vendored
Normal file
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_386.go
generated
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_freebsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_LONG_MAX = 0x7fffffff
|
||||
_SHRT_MAX = 0x7fff
|
||||
)
|
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_amd64.go
generated
vendored
Normal file
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_amd64.go
generated
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_freebsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_LONG_MAX = 0x7fffffffffffffff
|
||||
_SHRT_MAX = 0x7fff
|
||||
)
|
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_arm.go
generated
vendored
Normal file
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_arm.go
generated
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_freebsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_LONG_MAX = 0x7fffffff
|
||||
_SHRT_MAX = 0x7fff
|
||||
)
|
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_arm64.go
generated
vendored
Normal file
9
vendor/github.com/tklauser/go-sysconf/zsysconf_values_freebsd_arm64.go
generated
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_freebsd.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_LONG_MAX = 0x7fffffffffffffff
|
||||
_SHRT_MAX = 0x7fff
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_386.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_386.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x4000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = 0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V7_LP64_OFF64 = -0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = 0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V6_LP64_OFF64 = -0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_amd64.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_amd64.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x4000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_arm.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_arm.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x4000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = 0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V7_LP64_OFF64 = -0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = 0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V6_LP64_OFF64 = -0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_arm64.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_arm64.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mips.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mips.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = 0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V7_LP64_OFF64 = -0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = 0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V6_LP64_OFF64 = -0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mips64.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mips64.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mips64le.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mips64le.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mipsle.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_mipsle.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = 0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V7_LP64_OFF64 = -0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = 0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = 0x1
|
||||
_POSIX_V6_LP64_OFF64 = -0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_ppc64.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_ppc64.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_ppc64le.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_ppc64le.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x20000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_riscv64.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_riscv64.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x4000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_s390x.go
generated
vendored
Normal file
111
vendor/github.com/tklauser/go-sysconf/zsysconf_values_linux_s390x.go
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
|||
// Code generated by cmd/cgo -godefs; DO NOT EDIT.
|
||||
// cgo -godefs sysconf_values_linux.go
|
||||
|
||||
package sysconf
|
||||
|
||||
const (
|
||||
_AIO_PRIO_DELTA_MAX = 0x14
|
||||
_BC_BASE_MAX = 0x63
|
||||
_BC_DIM_MAX = 0x800
|
||||
_BC_SCALE_MAX = 0x63
|
||||
_BC_STRING_MAX = 0x3e8
|
||||
_COLL_WEIGHTS_MAX = 0xff
|
||||
_DELAYTIMER_MAX = 0x7fffffff
|
||||
_EXPR_NEST_MAX = 0x20
|
||||
_HOST_NAME_MAX = 0x40
|
||||
_LINE_MAX = 0x800
|
||||
_LOGIN_NAME_MAX = 0x100
|
||||
_MQ_PRIO_MAX = 0x8000
|
||||
_NGROUPS_MAX = 0x10000
|
||||
_NSS_BUFLEN_GROUP = 0x400
|
||||
_NSS_BUFLEN_PASSWD = 0x400
|
||||
_OPEN_MAX = 0x100
|
||||
_PTHREAD_KEYS_MAX = 0x400
|
||||
_PTHREAD_STACK_MIN = 0x4000
|
||||
_RE_DUP_MAX = 0x7fff
|
||||
_RTSIG_MAX = 0x20
|
||||
_SEM_VALUE_MAX = 0x7fffffff
|
||||
_STREAM_MAX = 0x10
|
||||
_SYMLOOP_MAX = -0x1
|
||||
_TTY_NAME_MAX = 0x20
|
||||
|
||||
_UIO_MAXIOV = 0x400
|
||||
|
||||
_INT_MAX = 0x7fffffff
|
||||
|
||||
_POSIX_ADVISORY_INFO = 0x31069
|
||||
_POSIX_ARG_MAX = 0x1000
|
||||
_POSIX_ASYNCHRONOUS_IO = 0x31069
|
||||
_POSIX_BARRIERS = 0x31069
|
||||
_POSIX_CHILD_MAX = 0x19
|
||||
_POSIX_CLOCK_SELECTION = 0x31069
|
||||
_POSIX_CPUTIME = 0x0
|
||||
_POSIX_FSYNC = 0x31069
|
||||
_POSIX_IPV6 = 0x31069
|
||||
_POSIX_JOB_CONTROL = 0x1
|
||||
_POSIX_MAPPED_FILES = 0x31069
|
||||
_POSIX_MEMLOCK = 0x31069
|
||||
_POSIX_MEMLOCK_RANGE = 0x31069
|
||||
_POSIX_MEMORY_PROTECTION = 0x31069
|
||||
_POSIX_MESSAGE_PASSING = 0x31069
|
||||
_POSIX_MONOTONIC_CLOCK = 0x0
|
||||
_POSIX_PRIORITIZED_IO = 0x31069
|
||||
_POSIX_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_RAW_SOCKETS = 0x31069
|
||||
_POSIX_READER_WRITER_LOCKS = 0x31069
|
||||
_POSIX_REALTIME_SIGNALS = 0x31069
|
||||
_POSIX_REGEXP = 0x1
|
||||
_POSIX_SAVED_IDS = 0x1
|
||||
_POSIX_SEMAPHORES = 0x31069
|
||||
_POSIX_SHARED_MEMORY_OBJECTS = 0x31069
|
||||
_POSIX_SHELL = 0x1
|
||||
_POSIX_SIGQUEUE_MAX = 0x20
|
||||
_POSIX_SPAWN = 0x31069
|
||||
_POSIX_SPIN_LOCKS = 0x31069
|
||||
_POSIX_SPORADIC_SERVER = -0x1
|
||||
_POSIX_SYNCHRONIZED_IO = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKADDR = 0x31069
|
||||
_POSIX_THREAD_ATTR_STACKSIZE = 0x31069
|
||||
_POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4
|
||||
_POSIX_THREAD_PRIO_INHERIT = 0x31069
|
||||
_POSIX_THREAD_PRIO_PROTECT = 0x31069
|
||||
_POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069
|
||||
_POSIX_THREAD_PROCESS_SHARED = 0x31069
|
||||
_POSIX_THREAD_SAFE_FUNCTIONS = 0x31069
|
||||
_POSIX_THREAD_SPORADIC_SERVER = -0x1
|
||||
_POSIX_THREADS = 0x31069
|
||||
_POSIX_TIMEOUTS = 0x31069
|
||||
_POSIX_TIMERS = 0x31069
|
||||
_POSIX_TRACE = -0x1
|
||||
_POSIX_TRACE_EVENT_FILTER = -0x1
|
||||
_POSIX_TRACE_INHERIT = -0x1
|
||||
_POSIX_TRACE_LOG = -0x1
|
||||
_POSIX_TYPED_MEMORY_OBJECTS = -0x1
|
||||
_POSIX_VERSION = 0x31069
|
||||
|
||||
_POSIX_V7_ILP32_OFF32 = -0x1
|
||||
_POSIX_V7_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V7_LP64_OFF64 = 0x1
|
||||
_POSIX_V7_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX_V6_ILP32_OFF32 = -0x1
|
||||
_POSIX_V6_ILP32_OFFBIG = -0x1
|
||||
_POSIX_V6_LP64_OFF64 = 0x1
|
||||
_POSIX_V6_LPBIG_OFFBIG = -0x1
|
||||
|
||||
_POSIX2_C_BIND = 0x31069
|
||||
_POSIX2_C_DEV = 0x31069
|
||||
_POSIX2_C_VERSION = 0x31069
|
||||
_POSIX2_CHAR_TERM = 0x31069
|
||||
_POSIX2_LOCALEDEF = 0x31069
|
||||
_POSIX2_SW_DEV = 0x31069
|
||||
_POSIX2_VERSION = 0x31069
|
||||
|
||||
_XOPEN_ENH_I18N = 0x1
|
||||
_XOPEN_REALTIME = 0x1
|
||||
_XOPEN_REALTIME_THREADS = 0x1
|
||||
_XOPEN_SHM = 0x1
|
||||
_XOPEN_UNIX = 0x1
|
||||
_XOPEN_VERSION = 0x2bc
|
||||
_XOPEN_XCU_VERSION = 0x4
|
||||
)
|
|
@ -0,0 +1,12 @@
|
|||
env:
|
||||
CIRRUS_CLONE_DEPTH: 1
|
||||
|
||||
freebsd_12_task:
|
||||
freebsd_instance:
|
||||
image_family: freebsd-12-2
|
||||
install_script: |
|
||||
pkg install -y git go
|
||||
GOBIN=$PWD/bin go get golang.org/dl/go1.16.2
|
||||
bin/go1.16.2 download
|
||||
build_script: bin/go1.16.2 build -v ./...
|
||||
test_script: bin/go1.16.2 test -race ./...
|
|
@ -0,0 +1,202 @@
|
|||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "{}"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright {yyyy} Authors of Cilium
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
# numcpus
|
||||
|
||||
[![Go Reference](https://pkg.go.dev/badge/github.com/tklauser/numcpus.svg)](https://pkg.go.dev/github.com/tklauser/numcpus)
|
||||
[![GitHub Action Status](https://github.com/tklauser/numcpus/workflows/Tests/badge.svg)](https://github.com/tklauser/numcpus/actions?query=workflow%3ATests)
|
||||
[![Go Report Card](https://goreportcard.com/badge/github.com/tklauser/numcpus)](https://goreportcard.com/report/github.com/tklauser/numcpus)
|
||||
|
||||
Package numcpus provides information about the number of CPU.
|
||||
|
||||
It gets the number of CPUs (online, offline, present, possible or kernel
|
||||
maximum) on a Linux, Darwin, FreeBSD, NetBSD, OpenBSD, DragonflyBSD or
|
||||
Solaris/Illumos system.
|
||||
|
||||
On Linux, the information is retrieved by reading the corresponding CPU
|
||||
topology files in `/sys/devices/system/cpu`.
|
||||
|
||||
Not all functions are supported on Darwin, FreeBSD, NetBSD, OpenBSD,
|
||||
DragonflyBSD and Solaris/Illumos.
|
||||
|
||||
## Usage
|
||||
|
||||
```Go
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"github.com/tklauser/numcpus"
|
||||
)
|
||||
|
||||
func main() {
|
||||
online, err := numcpus.GetOnline()
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "GetOnline: %v\n", err)
|
||||
}
|
||||
fmt.Printf("online CPUs: %v\n", online)
|
||||
|
||||
possible, err := numcpus.GetPossible()
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "GetPossible: %v\n", err)
|
||||
}
|
||||
fmt.Printf("possible CPUs: %v\n", possible)
|
||||
}
|
||||
```
|
||||
|
||||
## References
|
||||
|
||||
* [Linux kernel sysfs documenation for CPU attributes](https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-devices-system-cpu)
|
||||
* [Linux kernel CPU topology documentation](https://www.kernel.org/doc/Documentation/cputopology.txt)
|
|
@ -0,0 +1,5 @@
|
|||
module github.com/tklauser/numcpus
|
||||
|
||||
go 1.11
|
||||
|
||||
require golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa
|
|
@ -0,0 +1,2 @@
|
|||
golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa h1:ZYxPR6aca/uhfRJyaOAtflSHjJYiktO7QnJC5ut7iY4=
|
||||
golang.org/x/sys v0.0.0-20210316164454-77fc1eacc6aa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
@ -0,0 +1,61 @@
|
|||
// Copyright 2018 Tobias Klauser
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
// Package numcpus provides information about the number of CPU.
|
||||
//
|
||||
// It gets the number of CPUs (online, offline, present, possible or kernel
|
||||
// maximum) on a Linux, Darwin, FreeBSD, NetBSD, OpenBSD or DragonflyBSD
|
||||
// system.
|
||||
//
|
||||
// On Linux, the information is retrieved by reading the corresponding CPU
|
||||
// topology files in /sys/devices/system/cpu.
|
||||
//
|
||||
// Not all functions are supported on Darwin, FreeBSD, NetBSD, OpenBSD and
|
||||
// DragonflyBSD.
|
||||
package numcpus
|
||||
|
||||
import "errors"
|
||||
|
||||
// ErrNotSupported is the error returned when the function is not supported.
|
||||
var ErrNotSupported = errors.New("function not supported")
|
||||
|
||||
// GetKernelMax returns the maximum number of CPUs allowed by the kernel
|
||||
// configuration. This function is only supported on Linux systems.
|
||||
func GetKernelMax() (int, error) {
|
||||
return getKernelMax()
|
||||
}
|
||||
|
||||
// GetOffline returns the number of offline CPUs, i.e. CPUs that are not online
|
||||
// because they have been hotplugged off or exceed the limit of CPUs allowed by
|
||||
// the kernel configuration (see GetKernelMax). This function is only supported
|
||||
// on Linux systems.
|
||||
func GetOffline() (int, error) {
|
||||
return getOffline()
|
||||
}
|
||||
|
||||
// GetOnline returns the number of CPUs that are online and being scheduled.
|
||||
func GetOnline() (int, error) {
|
||||
return getOnline()
|
||||
}
|
||||
|
||||
// GetPossible returns the number of possible CPUs, i.e. CPUs that
|
||||
// have been allocated resources and can be brought online if they are present.
|
||||
func GetPossible() (int, error) {
|
||||
return getPossible()
|
||||
}
|
||||
|
||||
// GetPresent returns the number of CPUs present in the system.
|
||||
func GetPresent() (int, error) {
|
||||
return getPresent()
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
// Copyright 2018 Tobias Klauser
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
//go:build darwin || dragonfly || freebsd || netbsd || openbsd
|
||||
// +build darwin dragonfly freebsd netbsd openbsd
|
||||
|
||||
package numcpus
|
||||
|
||||
import (
|
||||
"runtime"
|
||||
|
||||
"golang.org/x/sys/unix"
|
||||
)
|
||||
|
||||
func getKernelMax() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getOffline() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getOnline() (int, error) {
|
||||
var n uint32
|
||||
var err error
|
||||
switch runtime.GOOS {
|
||||
case "netbsd", "openbsd":
|
||||
n, err = unix.SysctlUint32("hw.ncpuonline")
|
||||
if err != nil || n < 0 {
|
||||
n, err = unix.SysctlUint32("hw.ncpu")
|
||||
}
|
||||
default:
|
||||
n, err = unix.SysctlUint32("hw.ncpu")
|
||||
}
|
||||
return int(n), err
|
||||
}
|
||||
|
||||
func getPossible() (int, error) {
|
||||
n, err := unix.SysctlUint32("hw.ncpu")
|
||||
return int(n), err
|
||||
}
|
||||
|
||||
func getPresent() (int, error) {
|
||||
n, err := unix.SysctlUint32("hw.ncpu")
|
||||
return int(n), err
|
||||
}
|
|
@ -0,0 +1,84 @@
|
|||
// Copyright 2018 Tobias Klauser
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package numcpus
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"path/filepath"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
const sysfsCPUBasePath = "/sys/devices/system/cpu"
|
||||
|
||||
func readCPURange(file string) (int, error) {
|
||||
buf, err := ioutil.ReadFile(filepath.Join(sysfsCPUBasePath, file))
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
return parseCPURange(strings.Trim(string(buf), "\n "))
|
||||
}
|
||||
|
||||
func parseCPURange(cpus string) (int, error) {
|
||||
n := int(0)
|
||||
for _, cpuRange := range strings.Split(cpus, ",") {
|
||||
if len(cpuRange) == 0 {
|
||||
continue
|
||||
}
|
||||
rangeOp := strings.SplitN(cpuRange, "-", 2)
|
||||
first, err := strconv.ParseUint(rangeOp[0], 10, 32)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
if len(rangeOp) == 1 {
|
||||
n++
|
||||
continue
|
||||
}
|
||||
last, err := strconv.ParseUint(rangeOp[1], 10, 32)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
n += int(last - first + 1)
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func getKernelMax() (int, error) {
|
||||
buf, err := ioutil.ReadFile(filepath.Join(sysfsCPUBasePath, "kernel_max"))
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
n, err := strconv.ParseInt(strings.Trim(string(buf), "\n "), 10, 32)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
return int(n), nil
|
||||
}
|
||||
|
||||
func getOffline() (int, error) {
|
||||
return readCPURange("offline")
|
||||
}
|
||||
|
||||
func getOnline() (int, error) {
|
||||
return readCPURange("online")
|
||||
}
|
||||
|
||||
func getPossible() (int, error) {
|
||||
return readCPURange("possible")
|
||||
}
|
||||
|
||||
func getPresent() (int, error) {
|
||||
return readCPURange("present")
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
// Copyright 2021 Tobias Klauser
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
//go:build solaris
|
||||
// +build solaris
|
||||
|
||||
package numcpus
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
// taken from /usr/include/sys/unistd.h
|
||||
const (
|
||||
_SC_NPROCESSORS_CONF = 14
|
||||
_SC_NPROCESSORS_ONLN = 15
|
||||
_SC_NPROCESSORS_MAX = 516
|
||||
)
|
||||
|
||||
func getKernelMax() (int, error) {
|
||||
n, err := unix.Sysconf(_SC_NPROCESSORS_MAX)
|
||||
return int(n), err
|
||||
}
|
||||
|
||||
func getOffline() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getOnline() (int, error) {
|
||||
n, err := unix.Sysconf(_SC_NPROCESSORS_ONLN)
|
||||
return int(n), err
|
||||
}
|
||||
|
||||
func getPossible() (int, error) {
|
||||
n, err := unix.Sysconf(_SC_NPROCESSORS_CONF)
|
||||
return int(n), err
|
||||
}
|
||||
|
||||
func getPresent() (int, error) {
|
||||
n, err := unix.Sysconf(_SC_NPROCESSORS_CONF)
|
||||
return int(n), err
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
// Copyright 2021 Tobias Klauser
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
//go:build !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris
|
||||
// +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris
|
||||
|
||||
package numcpus
|
||||
|
||||
func getKernelMax() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getOffline() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getOnline() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getPossible() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
||||
|
||||
func getPresent() (int, error) {
|
||||
return 0, ErrNotSupported
|
||||
}
|
|
@ -1109,7 +1109,7 @@ github.com/sethvargo/go-limiter
|
|||
github.com/sethvargo/go-limiter/httplimit
|
||||
github.com/sethvargo/go-limiter/internal/fasttime
|
||||
github.com/sethvargo/go-limiter/memorystore
|
||||
# github.com/shirou/gopsutil v3.21.1+incompatible
|
||||
# github.com/shirou/gopsutil v3.21.5+incompatible
|
||||
## explicit
|
||||
github.com/shirou/gopsutil/cpu
|
||||
github.com/shirou/gopsutil/disk
|
||||
|
@ -1150,6 +1150,11 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile
|
|||
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm/v20170312
|
||||
# github.com/tidwall/pretty v1.0.1
|
||||
## explicit
|
||||
# github.com/tklauser/go-sysconf v0.3.6
|
||||
## explicit
|
||||
github.com/tklauser/go-sysconf
|
||||
# github.com/tklauser/numcpus v0.2.2
|
||||
github.com/tklauser/numcpus
|
||||
# github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926
|
||||
github.com/tv42/httpunix
|
||||
# github.com/ulikunitz/xz v0.5.7
|
||||
|
|
Loading…
Reference in New Issue