update sqlite library -> v1.13.0
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
This commit is contained in:
parent
2b14b20802
commit
71a4f8667c
8
go.mod
8
go.mod
|
@ -33,7 +33,7 @@ require (
|
||||||
github.com/jackc/pgx/v4 v4.13.0
|
github.com/jackc/pgx/v4 v4.13.0
|
||||||
github.com/json-iterator/go v1.1.11 // indirect
|
github.com/json-iterator/go v1.1.11 // indirect
|
||||||
github.com/leodido/go-urn v1.2.1 // indirect
|
github.com/leodido/go-urn v1.2.1 // indirect
|
||||||
github.com/mattn/go-isatty v0.0.13 // indirect
|
github.com/mattn/go-isatty v0.0.14 // indirect
|
||||||
github.com/microcosm-cc/bluemonday v1.0.15
|
github.com/microcosm-cc/bluemonday v1.0.15
|
||||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||||
github.com/modern-go/reflect2 v1.0.1 // indirect
|
github.com/modern-go/reflect2 v1.0.1 // indirect
|
||||||
|
@ -55,15 +55,13 @@ require (
|
||||||
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97
|
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97
|
||||||
golang.org/x/mod v0.5.0 // indirect
|
golang.org/x/mod v0.5.0 // indirect
|
||||||
golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914
|
golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914
|
||||||
golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf // indirect
|
golang.org/x/sys v0.0.0-20210908160347-a851e7ddeee0 // indirect
|
||||||
golang.org/x/text v0.3.6
|
golang.org/x/text v0.3.6
|
||||||
golang.org/x/tools v0.1.5 // indirect
|
golang.org/x/tools v0.1.5 // indirect
|
||||||
google.golang.org/appengine v1.6.7 // indirect
|
google.golang.org/appengine v1.6.7 // indirect
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
||||||
gopkg.in/yaml.v2 v2.4.0
|
gopkg.in/yaml.v2 v2.4.0
|
||||||
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
|
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
|
||||||
modernc.org/ccgo/v3 v3.10.1 // indirect
|
modernc.org/sqlite v1.13.0
|
||||||
modernc.org/libc v1.10.0 // indirect
|
|
||||||
modernc.org/sqlite v1.12.0
|
|
||||||
mvdan.cc/xurls/v2 v2.3.0
|
mvdan.cc/xurls/v2 v2.3.0
|
||||||
)
|
)
|
||||||
|
|
41
go.sum
41
go.sum
|
@ -338,8 +338,8 @@ github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hd
|
||||||
github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
||||||
github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ=
|
github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ=
|
||||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||||
github.com/mattn/go-isatty v0.0.13 h1:qdl+GuBjcsKKDco5BsxPJlId98mSWNKqYA+Co0SC1yA=
|
github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y=
|
||||||
github.com/mattn/go-isatty v0.0.13/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
||||||
github.com/mattn/go-sqlite3 v1.14.8 h1:gDp86IdQsN/xWjIEmr9MF6o9mpksUgh0fu+9ByFxzIU=
|
github.com/mattn/go-sqlite3 v1.14.8 h1:gDp86IdQsN/xWjIEmr9MF6o9mpksUgh0fu+9ByFxzIU=
|
||||||
github.com/mattn/go-sqlite3 v1.14.8/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
|
github.com/mattn/go-sqlite3 v1.14.8/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
|
||||||
github.com/memcachier/mc v2.0.1+incompatible/go.mod h1:7bkvFE61leUBvXz+yxsOnGBQSZpBSPIMUQSmmSHvuXc=
|
github.com/memcachier/mc v2.0.1+incompatible/go.mod h1:7bkvFE61leUBvXz+yxsOnGBQSZpBSPIMUQSmmSHvuXc=
|
||||||
|
@ -650,14 +650,15 @@ golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7w
|
||||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
||||||
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf h1:2ucpDCmfkl8Bd/FsLtiD653Wf96cW37s+iGx93zsu4k=
|
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20210902050250-f475640dd07b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
|
golang.org/x/sys v0.0.0-20210908160347-a851e7ddeee0 h1:6xxeVXiyYpF8WCTnKKCbjnEdsrwjZYY8TOuk7xP0chg=
|
||||||
|
golang.org/x/sys v0.0.0-20210908160347-a851e7ddeee0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
|
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
|
||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E=
|
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E=
|
||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||||
|
@ -842,22 +843,24 @@ honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9
|
||||||
lukechampine.com/uint128 v1.1.1 h1:pnxCASz787iMf+02ssImqk6OLt+Z5QHMoZyUXR4z6JU=
|
lukechampine.com/uint128 v1.1.1 h1:pnxCASz787iMf+02ssImqk6OLt+Z5QHMoZyUXR4z6JU=
|
||||||
lukechampine.com/uint128 v1.1.1/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
|
lukechampine.com/uint128 v1.1.1/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
|
||||||
modernc.org/cc/v3 v3.33.6/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
modernc.org/cc/v3 v3.33.6/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
modernc.org/cc/v3 v3.33.7/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
|
||||||
modernc.org/cc/v3 v3.33.9/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
modernc.org/cc/v3 v3.33.9/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
modernc.org/cc/v3 v3.33.11 h1:Fc7goiKCzfHvGR4WZbVLWIh/4VhJE2Z31Jkg36Ezp7Q=
|
|
||||||
modernc.org/cc/v3 v3.33.11/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
modernc.org/cc/v3 v3.33.11/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
|
modernc.org/cc/v3 v3.34.0 h1:dFhZc/HKR3qp92sYQxKRRaDMz+sr1bwcFD+m7LSCrAs=
|
||||||
|
modernc.org/cc/v3 v3.34.0/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
modernc.org/ccgo/v3 v3.9.5/go.mod h1:umuo2EP2oDSBnD3ckjaVUXMrmeAw8C8OSICVa0iFf60=
|
modernc.org/ccgo/v3 v3.9.5/go.mod h1:umuo2EP2oDSBnD3ckjaVUXMrmeAw8C8OSICVa0iFf60=
|
||||||
modernc.org/ccgo/v3 v3.9.6/go.mod h1:KGOi0NhaT6CO19xeSXcpXBl0OkoD6T1U4dPd633G9Sg=
|
|
||||||
modernc.org/ccgo/v3 v3.10.0/go.mod h1:c0yBmkRFi7uW4J7fwx/JiijwOjeAeR2NoSaRVFPmjMw=
|
modernc.org/ccgo/v3 v3.10.0/go.mod h1:c0yBmkRFi7uW4J7fwx/JiijwOjeAeR2NoSaRVFPmjMw=
|
||||||
modernc.org/ccgo/v3 v3.10.1 h1:iS/P/unYVUpy7aAxy4Xj8BTy8afdyN1P54Ez2LlUmFI=
|
modernc.org/ccgo/v3 v3.11.0/go.mod h1:dGNposbDp9TOZ/1KBxghxtUp/bzErD0/0QW4hhSaBMI=
|
||||||
modernc.org/ccgo/v3 v3.10.1/go.mod h1:Z+DnGxGOZEvVjdehbO78XHAIWGxyTxzuz668w3SgiiQ=
|
modernc.org/ccgo/v3 v3.11.1/go.mod h1:lWHxfsn13L3f7hgGsGlU28D9eUOf6y3ZYHKoPaKU0ag=
|
||||||
|
modernc.org/ccgo/v3 v3.11.2 h1:gqa8PQ2v7SjrhHCgxUO5dzoAJWSLAveJqZTNkPCN0kc=
|
||||||
|
modernc.org/ccgo/v3 v3.11.2/go.mod h1:6kii3AptTDI+nUrM9RFBoIEUEisSWCbdczD9ZwQH2FE=
|
||||||
modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM=
|
modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM=
|
||||||
modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM=
|
modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM=
|
||||||
modernc.org/libc v1.7.13-0.20210308123627-12f642a52bb8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w=
|
|
||||||
modernc.org/libc v1.9.8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w=
|
modernc.org/libc v1.9.8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w=
|
||||||
modernc.org/libc v1.9.11/go.mod h1:NyF3tsA5ArIjJ83XB0JlqhjTabTCHm9aX4XMPHyQn0Q=
|
modernc.org/libc v1.9.11/go.mod h1:NyF3tsA5ArIjJ83XB0JlqhjTabTCHm9aX4XMPHyQn0Q=
|
||||||
modernc.org/libc v1.10.0 h1:VY0vRYW7BMx9vhF3ZvdgmjFOdRrV3EpjUFlRu+5O9FM=
|
modernc.org/libc v1.11.0/go.mod h1:2lOfPmj7cz+g1MrPNmX65QCzVxgNq2C5o0jdLY2gAYg=
|
||||||
modernc.org/libc v1.10.0/go.mod h1:0/Nct1oFfLhjihlkmiJvALxOyV2rlkJ7/OZk1ni+WDQ=
|
modernc.org/libc v1.11.2/go.mod h1:ioIyrl3ETkugDO3SGZ+6EOKvlP3zSOycUETe4XM4n8M=
|
||||||
|
modernc.org/libc v1.11.3 h1:q//spBhqp23lC/if8/o8hlyET57P8mCZqrqftzT2WmY=
|
||||||
|
modernc.org/libc v1.11.3/go.mod h1:k3HDCP95A6U111Q5TmG3nAyUcp3kR5YFZTeDS9v8vSU=
|
||||||
modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
||||||
modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
||||||
modernc.org/mathutil v1.4.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
modernc.org/mathutil v1.4.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
||||||
|
@ -868,16 +871,16 @@ modernc.org/memory v1.0.5 h1:XRch8trV7GgvTec2i7jc33YlUI0RKVDBvZ5eZ5m8y14=
|
||||||
modernc.org/memory v1.0.5/go.mod h1:B7OYswTRnfGg+4tDH1t1OeUNnsy2viGTdME4tzd+IjM=
|
modernc.org/memory v1.0.5/go.mod h1:B7OYswTRnfGg+4tDH1t1OeUNnsy2viGTdME4tzd+IjM=
|
||||||
modernc.org/opt v0.1.1 h1:/0RX92k9vwVeDXj+Xn23DKp2VJubL7k8qNffND6qn3A=
|
modernc.org/opt v0.1.1 h1:/0RX92k9vwVeDXj+Xn23DKp2VJubL7k8qNffND6qn3A=
|
||||||
modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0=
|
modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0=
|
||||||
modernc.org/sqlite v1.12.0 h1:AMAOgk4CkblRJc6YLKSYtz3pZ6DW5wjQ1uYH/rN7/Kk=
|
modernc.org/sqlite v1.13.0 h1:cwhUj0jTBgPjk/demWheV+T6xi6ifTfsGIFKFq0g3Ck=
|
||||||
modernc.org/sqlite v1.12.0/go.mod h1:ppqJ4cQ+R09YLzl9haEL9AYgj6wX8FcfwDTOI0nYykU=
|
modernc.org/sqlite v1.13.0/go.mod h1:2qO/6jZJrcQaxFUHxOwa6Q6WfiGSsiVj6GXX0Ker+Jg=
|
||||||
modernc.org/strutil v1.1.1 h1:xv+J1BXY3Opl2ALrBwyfEikFAj8pmqcpnfmuwUwcozs=
|
modernc.org/strutil v1.1.1 h1:xv+J1BXY3Opl2ALrBwyfEikFAj8pmqcpnfmuwUwcozs=
|
||||||
modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw=
|
modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw=
|
||||||
modernc.org/tcl v1.5.5 h1:N03RwthgTR/l/eQvz3UjfYnvVVj1G2sZqzFGfoD4HE4=
|
modernc.org/tcl v1.5.9 h1:DZMfR+RDJRhcrmMEMTJgVIX+Wf5qhfVX0llI0rsc20w=
|
||||||
modernc.org/tcl v1.5.5/go.mod h1:ADkaTUuwukkrlhqwERyq0SM8OvyXo7+TjFz7yAF56EI=
|
modernc.org/tcl v1.5.9/go.mod h1:bcwjvBJ2u0exY6K35eAmxXBBij5kXb1dHlAWmfhqThE=
|
||||||
modernc.org/token v1.0.0 h1:a0jaWiNMDhDUtqOj09wvjWWAqd3q7WpBulmL9H2egsk=
|
modernc.org/token v1.0.0 h1:a0jaWiNMDhDUtqOj09wvjWWAqd3q7WpBulmL9H2egsk=
|
||||||
modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
|
modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
|
||||||
modernc.org/z v1.0.1 h1:WyIDpEpAIx4Hel6q/Pcgj/VhaQV5XPJ2I6ryIYbjnpc=
|
modernc.org/z v1.1.2 h1:IjjzDsIFbl0wuF2KfwvdyUAJVwxD4iwZ6akLNiDoClM=
|
||||||
modernc.org/z v1.0.1/go.mod h1:8/SRk5C/HgiQWCgXdfpb+1RvhORdkz5sw72d3jjtyqA=
|
modernc.org/z v1.1.2/go.mod h1:sj9T1AGBG0dm6SCVzldPOHWrif6XBpooJtbttMn1+Js=
|
||||||
mvdan.cc/xurls/v2 v2.3.0 h1:59Olnbt67UKpxF1EwVBopJvkSUBmgtb468E4GVWIZ1I=
|
mvdan.cc/xurls/v2 v2.3.0 h1:59Olnbt67UKpxF1EwVBopJvkSUBmgtb468E4GVWIZ1I=
|
||||||
mvdan.cc/xurls/v2 v2.3.0/go.mod h1:AjuTy7gEiUArFMjgBBDU4SMxlfUYsRokpJQgNWOt3e4=
|
mvdan.cc/xurls/v2 v2.3.0/go.mod h1:AjuTy7gEiUArFMjgBBDU4SMxlfUYsRokpJQgNWOt3e4=
|
||||||
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
|
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
|
||||||
|
|
|
@ -209,8 +209,8 @@ func GetTestDefaults() Defaults {
|
||||||
Port: 8080,
|
Port: 8080,
|
||||||
TrustedProxies: []string{"127.0.0.1/32"},
|
TrustedProxies: []string{"127.0.0.1/32"},
|
||||||
|
|
||||||
DbType: "postgres",
|
DbType: "sqlite",
|
||||||
DbAddress: "localhost",
|
DbAddress: ":memory:",
|
||||||
DbPort: 5432,
|
DbPort: 5432,
|
||||||
DbUser: "postgres",
|
DbUser: "postgres",
|
||||||
DbPassword: "postgres",
|
DbPassword: "postgres",
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
language: go
|
|
||||||
sudo: false
|
|
||||||
go:
|
|
||||||
- 1.13.x
|
|
||||||
- tip
|
|
||||||
|
|
||||||
before_install:
|
|
||||||
- go get -t -v ./...
|
|
||||||
|
|
||||||
script:
|
|
||||||
- ./go.test.sh
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- bash <(curl -s https://codecov.io/bash)
|
|
|
@ -2,4 +2,4 @@ module github.com/mattn/go-isatty
|
||||||
|
|
||||||
go 1.12
|
go 1.12
|
||||||
|
|
||||||
require golang.org/x/sys v0.0.0-20200116001909-b77594299b42
|
require golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
//go:build (darwin || freebsd || openbsd || netbsd || dragonfly) && !appengine
|
||||||
// +build darwin freebsd openbsd netbsd dragonfly
|
// +build darwin freebsd openbsd netbsd dragonfly
|
||||||
// +build !appengine
|
// +build !appengine
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
//go:build appengine || js || nacl || wasm
|
||||||
// +build appengine js nacl wasm
|
// +build appengine js nacl wasm
|
||||||
|
|
||||||
package isatty
|
package isatty
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
//go:build plan9
|
||||||
// +build plan9
|
// +build plan9
|
||||||
|
|
||||||
package isatty
|
package isatty
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// +build solaris
|
//go:build solaris && !appengine
|
||||||
// +build !appengine
|
// +build solaris,!appengine
|
||||||
|
|
||||||
package isatty
|
package isatty
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
//go:build (linux || aix || zos) && !appengine
|
||||||
// +build linux aix zos
|
// +build linux aix zos
|
||||||
// +build !appengine
|
// +build !appengine
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// +build windows
|
//go:build windows && !appengine
|
||||||
// +build !appengine
|
// +build windows,!appengine
|
||||||
|
|
||||||
package isatty
|
package isatty
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ func isCygwinPipeName(name string) bool {
|
||||||
}
|
}
|
||||||
|
|
||||||
// getFileNameByHandle use the undocomented ntdll NtQueryObject to get file full name from file handler
|
// getFileNameByHandle use the undocomented ntdll NtQueryObject to get file full name from file handler
|
||||||
// since GetFileInformationByHandleEx is not avilable under windows Vista and still some old fashion
|
// since GetFileInformationByHandleEx is not available under windows Vista and still some old fashion
|
||||||
// guys are using Windows XP, this is a workaround for those guys, it will also work on system from
|
// guys are using Windows XP, this is a workaround for those guys, it will also work on system from
|
||||||
// Windows vista to 10
|
// Windows vista to 10
|
||||||
// see https://stackoverflow.com/a/18792477 for details
|
// see https://stackoverflow.com/a/18792477 for details
|
||||||
|
|
|
@ -229,6 +229,7 @@ struct ltchars {
|
||||||
#include <linux/input.h>
|
#include <linux/input.h>
|
||||||
#include <linux/kexec.h>
|
#include <linux/kexec.h>
|
||||||
#include <linux/keyctl.h>
|
#include <linux/keyctl.h>
|
||||||
|
#include <linux/landlock.h>
|
||||||
#include <linux/loop.h>
|
#include <linux/loop.h>
|
||||||
#include <linux/lwtunnel.h>
|
#include <linux/lwtunnel.h>
|
||||||
#include <linux/magic.h>
|
#include <linux/magic.h>
|
||||||
|
@ -497,6 +498,7 @@ ccflags="$@"
|
||||||
$2 ~ /^O?XTABS$/ ||
|
$2 ~ /^O?XTABS$/ ||
|
||||||
$2 ~ /^TC[IO](ON|OFF)$/ ||
|
$2 ~ /^TC[IO](ON|OFF)$/ ||
|
||||||
$2 ~ /^IN_/ ||
|
$2 ~ /^IN_/ ||
|
||||||
|
$2 ~ /^LANDLOCK_/ ||
|
||||||
$2 ~ /^LOCK_(SH|EX|NB|UN)$/ ||
|
$2 ~ /^LOCK_(SH|EX|NB|UN)$/ ||
|
||||||
$2 ~ /^LO_(KEY|NAME)_SIZE$/ ||
|
$2 ~ /^LO_(KEY|NAME)_SIZE$/ ||
|
||||||
$2 ~ /^LOOP_(CLR|CTL|GET|SET)_/ ||
|
$2 ~ /^LOOP_(CLR|CTL|GET|SET)_/ ||
|
||||||
|
|
|
@ -162,6 +162,14 @@ func (l *Lifreq) GetLifruInt() int {
|
||||||
return *(*int)(unsafe.Pointer(&l.Lifru[0]))
|
return *(*int)(unsafe.Pointer(&l.Lifru[0]))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (l *Lifreq) SetLifruUint(d uint) {
|
||||||
|
*(*uint)(unsafe.Pointer(&l.Lifru[0])) = d
|
||||||
|
}
|
||||||
|
|
||||||
|
func (l *Lifreq) GetLifruUint() uint {
|
||||||
|
return *(*uint)(unsafe.Pointer(&l.Lifru[0]))
|
||||||
|
}
|
||||||
|
|
||||||
func IoctlLifreq(fd int, req uint, l *Lifreq) error {
|
func IoctlLifreq(fd int, req uint, l *Lifreq) error {
|
||||||
return ioctl(fd, req, uintptr(unsafe.Pointer(l)))
|
return ioctl(fd, req, uintptr(unsafe.Pointer(l)))
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,6 +66,10 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
|
||||||
return fchmodat(dirfd, path, mode)
|
return fchmodat(dirfd, path, mode)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func InotifyInit() (fd int, err error) {
|
||||||
|
return InotifyInit1(0)
|
||||||
|
}
|
||||||
|
|
||||||
//sys ioctl(fd int, req uint, arg uintptr) (err error) = SYS_IOCTL
|
//sys ioctl(fd int, req uint, arg uintptr) (err error) = SYS_IOCTL
|
||||||
//sys ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) = SYS_IOCTL
|
//sys ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) = SYS_IOCTL
|
||||||
|
|
||||||
|
@ -168,27 +172,7 @@ func Utimes(path string, tv []Timeval) error {
|
||||||
//sys utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error)
|
//sys utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error)
|
||||||
|
|
||||||
func UtimesNano(path string, ts []Timespec) error {
|
func UtimesNano(path string, ts []Timespec) error {
|
||||||
if ts == nil {
|
return UtimesNanoAt(AT_FDCWD, path, ts, 0)
|
||||||
err := utimensat(AT_FDCWD, path, nil, 0)
|
|
||||||
if err != ENOSYS {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
return utimes(path, nil)
|
|
||||||
}
|
|
||||||
if len(ts) != 2 {
|
|
||||||
return EINVAL
|
|
||||||
}
|
|
||||||
err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
|
|
||||||
if err != ENOSYS {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
// If the utimensat syscall isn't available (utimensat was added to Linux
|
|
||||||
// in 2.6.22, Released, 8 July 2007) then fall back to utimes
|
|
||||||
var tv [2]Timeval
|
|
||||||
for i := 0; i < 2; i++ {
|
|
||||||
tv[i] = NsecToTimeval(TimespecToNsec(ts[i]))
|
|
||||||
}
|
|
||||||
return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
|
func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
|
||||||
|
@ -1229,11 +1213,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
|
||||||
func Accept(fd int) (nfd int, sa Sockaddr, err error) {
|
func Accept(fd int) (nfd int, sa Sockaddr, err error) {
|
||||||
var rsa RawSockaddrAny
|
var rsa RawSockaddrAny
|
||||||
var len _Socklen = SizeofSockaddrAny
|
var len _Socklen = SizeofSockaddrAny
|
||||||
// Try accept4 first for Android, then try accept for kernel older than 2.6.28
|
|
||||||
nfd, err = accept4(fd, &rsa, &len, 0)
|
nfd, err = accept4(fd, &rsa, &len, 0)
|
||||||
if err == ENOSYS {
|
|
||||||
nfd, err = accept(fd, &rsa, &len)
|
|
||||||
}
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,6 @@ func Pipe2(p []int, flags int) (err error) {
|
||||||
//sysnb Geteuid() (euid int) = SYS_GETEUID32
|
//sysnb Geteuid() (euid int) = SYS_GETEUID32
|
||||||
//sysnb Getgid() (gid int) = SYS_GETGID32
|
//sysnb Getgid() (gid int) = SYS_GETGID32
|
||||||
//sysnb Getuid() (uid int) = SYS_GETUID32
|
//sysnb Getuid() (uid int) = SYS_GETUID32
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Ioperm(from int, num int, on int) (err error)
|
//sys Ioperm(from int, num int, on int) (err error)
|
||||||
//sys Iopl(level int) (err error)
|
//sys Iopl(level int) (err error)
|
||||||
//sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
|
//sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
|
||||||
|
|
|
@ -21,17 +21,6 @@ package unix
|
||||||
//sysnb Getgid() (gid int)
|
//sysnb Getgid() (gid int)
|
||||||
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
|
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
|
||||||
//sysnb Getuid() (uid int)
|
//sysnb Getuid() (uid int)
|
||||||
//sysnb inotifyInit() (fd int, err error)
|
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
// First try inotify_init1, because Android's seccomp policy blocks the latter.
|
|
||||||
fd, err = InotifyInit1(0)
|
|
||||||
if err == ENOSYS {
|
|
||||||
fd, err = inotifyInit()
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
//sys Ioperm(from int, num int, on int) (err error)
|
//sys Ioperm(from int, num int, on int) (err error)
|
||||||
//sys Iopl(level int) (err error)
|
//sys Iopl(level int) (err error)
|
||||||
//sys Lchown(path string, uid int, gid int) (err error)
|
//sys Lchown(path string, uid int, gid int) (err error)
|
||||||
|
|
|
@ -26,11 +26,7 @@ func Pipe(p []int) (err error) {
|
||||||
return EINVAL
|
return EINVAL
|
||||||
}
|
}
|
||||||
var pp [2]_C_int
|
var pp [2]_C_int
|
||||||
// Try pipe2 first for Android O, then try pipe for kernel 2.6.23.
|
|
||||||
err = pipe2(&pp, 0)
|
err = pipe2(&pp, 0)
|
||||||
if err == ENOSYS {
|
|
||||||
err = pipe(&pp)
|
|
||||||
}
|
|
||||||
p[0] = int(pp[0])
|
p[0] = int(pp[0])
|
||||||
p[1] = int(pp[1])
|
p[1] = int(pp[1])
|
||||||
return
|
return
|
||||||
|
@ -86,7 +82,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
|
||||||
//sysnb Geteuid() (euid int) = SYS_GETEUID32
|
//sysnb Geteuid() (euid int) = SYS_GETEUID32
|
||||||
//sysnb Getgid() (gid int) = SYS_GETGID32
|
//sysnb Getgid() (gid int) = SYS_GETGID32
|
||||||
//sysnb Getuid() (uid int) = SYS_GETUID32
|
//sysnb Getuid() (uid int) = SYS_GETUID32
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
|
//sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
|
||||||
//sys Listen(s int, n int) (err error)
|
//sys Listen(s int, n int) (err error)
|
||||||
//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
|
//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
|
||||||
|
|
|
@ -211,10 +211,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) {
|
||||||
rsa.Service_name_len = uint64(length)
|
rsa.Service_name_len = uint64(length)
|
||||||
}
|
}
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
return InotifyInit1(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
// dup2 exists because func Dup3 in syscall_linux.go references
|
// dup2 exists because func Dup3 in syscall_linux.go references
|
||||||
// it in an unreachable path. dup2 isn't available on arm64.
|
// it in an unreachable path. dup2 isn't available on arm64.
|
||||||
func dup2(oldfd int, newfd int) error
|
func dup2(oldfd int, newfd int) error
|
||||||
|
|
|
@ -221,10 +221,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) {
|
||||||
rsa.Service_name_len = uint64(length)
|
rsa.Service_name_len = uint64(length)
|
||||||
}
|
}
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
return InotifyInit1(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
|
//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
|
||||||
|
|
||||||
func Poll(fds []PollFd, timeout int) (n int, err error) {
|
func Poll(fds []PollFd, timeout int) (n int, err error) {
|
||||||
|
|
|
@ -60,7 +60,6 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
|
||||||
//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error)
|
//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error)
|
||||||
//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
|
//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
|
||||||
|
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Ioperm(from int, num int, on int) (err error)
|
//sys Ioperm(from int, num int, on int) (err error)
|
||||||
//sys Iopl(level int) (err error)
|
//sys Iopl(level int) (err error)
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,6 @@ import (
|
||||||
//sysnb Geteuid() (euid int)
|
//sysnb Geteuid() (euid int)
|
||||||
//sysnb Getgid() (gid int)
|
//sysnb Getgid() (gid int)
|
||||||
//sysnb Getuid() (uid int)
|
//sysnb Getuid() (uid int)
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Ioperm(from int, num int, on int) (err error)
|
//sys Ioperm(from int, num int, on int) (err error)
|
||||||
//sys Iopl(level int) (err error)
|
//sys Iopl(level int) (err error)
|
||||||
//sys Lchown(path string, uid int, gid int) (err error)
|
//sys Lchown(path string, uid int, gid int) (err error)
|
||||||
|
|
|
@ -22,7 +22,6 @@ package unix
|
||||||
//sysnb Getgid() (gid int)
|
//sysnb Getgid() (gid int)
|
||||||
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) = SYS_UGETRLIMIT
|
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) = SYS_UGETRLIMIT
|
||||||
//sysnb Getuid() (uid int)
|
//sysnb Getuid() (uid int)
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Ioperm(from int, num int, on int) (err error)
|
//sys Ioperm(from int, num int, on int) (err error)
|
||||||
//sys Iopl(level int) (err error)
|
//sys Iopl(level int) (err error)
|
||||||
//sys Lchown(path string, uid int, gid int) (err error)
|
//sys Lchown(path string, uid int, gid int) (err error)
|
||||||
|
|
|
@ -192,10 +192,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) {
|
||||||
rsa.Service_name_len = uint64(length)
|
rsa.Service_name_len = uint64(length)
|
||||||
}
|
}
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
return InotifyInit1(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
func Pause() error {
|
func Pause() error {
|
||||||
_, err := ppoll(nil, 0, nil, nil)
|
_, err := ppoll(nil, 0, nil, nil)
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -25,7 +25,6 @@ import (
|
||||||
//sysnb Getgid() (gid int)
|
//sysnb Getgid() (gid int)
|
||||||
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
|
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
|
||||||
//sysnb Getuid() (uid int)
|
//sysnb Getuid() (uid int)
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Lchown(path string, uid int, gid int) (err error)
|
//sys Lchown(path string, uid int, gid int) (err error)
|
||||||
//sys Lstat(path string, stat *Stat_t) (err error)
|
//sys Lstat(path string, stat *Stat_t) (err error)
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
|
|
|
@ -20,7 +20,6 @@ package unix
|
||||||
//sysnb Getgid() (gid int)
|
//sysnb Getgid() (gid int)
|
||||||
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
|
//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
|
||||||
//sysnb Getuid() (uid int)
|
//sysnb Getuid() (uid int)
|
||||||
//sysnb InotifyInit() (fd int, err error)
|
|
||||||
//sys Lchown(path string, uid int, gid int) (err error)
|
//sys Lchown(path string, uid int, gid int) (err error)
|
||||||
//sys Listen(s int, n int) (err error)
|
//sys Listen(s int, n int) (err error)
|
||||||
//sys Lstat(path string, stat *Stat_t) (err error)
|
//sys Lstat(path string, stat *Stat_t) (err error)
|
||||||
|
|
|
@ -231,6 +231,8 @@ const (
|
||||||
BPF_PSEUDO_FUNC = 0x4
|
BPF_PSEUDO_FUNC = 0x4
|
||||||
BPF_PSEUDO_KFUNC_CALL = 0x2
|
BPF_PSEUDO_KFUNC_CALL = 0x2
|
||||||
BPF_PSEUDO_MAP_FD = 0x1
|
BPF_PSEUDO_MAP_FD = 0x1
|
||||||
|
BPF_PSEUDO_MAP_IDX = 0x5
|
||||||
|
BPF_PSEUDO_MAP_IDX_VALUE = 0x6
|
||||||
BPF_PSEUDO_MAP_VALUE = 0x2
|
BPF_PSEUDO_MAP_VALUE = 0x2
|
||||||
BPF_RET = 0x6
|
BPF_RET = 0x6
|
||||||
BPF_RSH = 0x70
|
BPF_RSH = 0x70
|
||||||
|
@ -1331,6 +1333,20 @@ const (
|
||||||
KEY_SPEC_THREAD_KEYRING = -0x1
|
KEY_SPEC_THREAD_KEYRING = -0x1
|
||||||
KEY_SPEC_USER_KEYRING = -0x4
|
KEY_SPEC_USER_KEYRING = -0x4
|
||||||
KEY_SPEC_USER_SESSION_KEYRING = -0x5
|
KEY_SPEC_USER_SESSION_KEYRING = -0x5
|
||||||
|
LANDLOCK_ACCESS_FS_EXECUTE = 0x1
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_BLOCK = 0x800
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_CHAR = 0x40
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_DIR = 0x80
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_FIFO = 0x400
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_REG = 0x100
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_SOCK = 0x200
|
||||||
|
LANDLOCK_ACCESS_FS_MAKE_SYM = 0x1000
|
||||||
|
LANDLOCK_ACCESS_FS_READ_DIR = 0x8
|
||||||
|
LANDLOCK_ACCESS_FS_READ_FILE = 0x4
|
||||||
|
LANDLOCK_ACCESS_FS_REMOVE_DIR = 0x10
|
||||||
|
LANDLOCK_ACCESS_FS_REMOVE_FILE = 0x20
|
||||||
|
LANDLOCK_ACCESS_FS_WRITE_FILE = 0x2
|
||||||
|
LANDLOCK_CREATE_RULESET_VERSION = 0x1
|
||||||
LINUX_REBOOT_CMD_CAD_OFF = 0x0
|
LINUX_REBOOT_CMD_CAD_OFF = 0x0
|
||||||
LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
|
LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
|
||||||
LINUX_REBOOT_CMD_HALT = 0xcdef0123
|
LINUX_REBOOT_CMD_HALT = 0xcdef0123
|
||||||
|
@ -1635,11 +1651,12 @@ const (
|
||||||
NFNL_MSG_BATCH_END = 0x11
|
NFNL_MSG_BATCH_END = 0x11
|
||||||
NFNL_NFA_NEST = 0x8000
|
NFNL_NFA_NEST = 0x8000
|
||||||
NFNL_SUBSYS_ACCT = 0x7
|
NFNL_SUBSYS_ACCT = 0x7
|
||||||
NFNL_SUBSYS_COUNT = 0xc
|
NFNL_SUBSYS_COUNT = 0xd
|
||||||
NFNL_SUBSYS_CTHELPER = 0x9
|
NFNL_SUBSYS_CTHELPER = 0x9
|
||||||
NFNL_SUBSYS_CTNETLINK = 0x1
|
NFNL_SUBSYS_CTNETLINK = 0x1
|
||||||
NFNL_SUBSYS_CTNETLINK_EXP = 0x2
|
NFNL_SUBSYS_CTNETLINK_EXP = 0x2
|
||||||
NFNL_SUBSYS_CTNETLINK_TIMEOUT = 0x8
|
NFNL_SUBSYS_CTNETLINK_TIMEOUT = 0x8
|
||||||
|
NFNL_SUBSYS_HOOK = 0xc
|
||||||
NFNL_SUBSYS_IPSET = 0x6
|
NFNL_SUBSYS_IPSET = 0x6
|
||||||
NFNL_SUBSYS_NFTABLES = 0xa
|
NFNL_SUBSYS_NFTABLES = 0xa
|
||||||
NFNL_SUBSYS_NFT_COMPAT = 0xb
|
NFNL_SUBSYS_NFT_COMPAT = 0xb
|
||||||
|
@ -1929,6 +1946,12 @@ const (
|
||||||
PR_PAC_GET_ENABLED_KEYS = 0x3d
|
PR_PAC_GET_ENABLED_KEYS = 0x3d
|
||||||
PR_PAC_RESET_KEYS = 0x36
|
PR_PAC_RESET_KEYS = 0x36
|
||||||
PR_PAC_SET_ENABLED_KEYS = 0x3c
|
PR_PAC_SET_ENABLED_KEYS = 0x3c
|
||||||
|
PR_SCHED_CORE = 0x3e
|
||||||
|
PR_SCHED_CORE_CREATE = 0x1
|
||||||
|
PR_SCHED_CORE_GET = 0x0
|
||||||
|
PR_SCHED_CORE_MAX = 0x4
|
||||||
|
PR_SCHED_CORE_SHARE_FROM = 0x3
|
||||||
|
PR_SCHED_CORE_SHARE_TO = 0x2
|
||||||
PR_SET_CHILD_SUBREAPER = 0x24
|
PR_SET_CHILD_SUBREAPER = 0x24
|
||||||
PR_SET_DUMPABLE = 0x4
|
PR_SET_DUMPABLE = 0x4
|
||||||
PR_SET_ENDIAN = 0x14
|
PR_SET_ENDIAN = 0x14
|
||||||
|
@ -2295,6 +2318,7 @@ const (
|
||||||
SECCOMP_MODE_DISABLED = 0x0
|
SECCOMP_MODE_DISABLED = 0x0
|
||||||
SECCOMP_MODE_FILTER = 0x2
|
SECCOMP_MODE_FILTER = 0x2
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
|
SECRETMEM_MAGIC = 0x5345434d
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SEEK_CUR = 0x1
|
SEEK_CUR = 0x1
|
||||||
SEEK_DATA = 0x3
|
SEEK_DATA = 0x3
|
||||||
|
|
|
@ -309,6 +309,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x10
|
SO_PASSCRED = 0x10
|
||||||
|
|
|
@ -310,6 +310,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x10
|
SO_PASSCRED = 0x10
|
||||||
|
|
|
@ -316,6 +316,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x10
|
SO_PASSCRED = 0x10
|
||||||
|
|
|
@ -306,6 +306,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x10
|
SO_PASSCRED = 0x10
|
||||||
|
|
|
@ -309,6 +309,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0x100
|
SO_OOBINLINE = 0x100
|
||||||
SO_PASSCRED = 0x11
|
SO_PASSCRED = 0x11
|
||||||
|
|
|
@ -309,6 +309,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0x100
|
SO_OOBINLINE = 0x100
|
||||||
SO_PASSCRED = 0x11
|
SO_PASSCRED = 0x11
|
||||||
|
|
|
@ -309,6 +309,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0x100
|
SO_OOBINLINE = 0x100
|
||||||
SO_PASSCRED = 0x11
|
SO_PASSCRED = 0x11
|
||||||
|
|
|
@ -309,6 +309,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0x100
|
SO_OOBINLINE = 0x100
|
||||||
SO_PASSCRED = 0x11
|
SO_PASSCRED = 0x11
|
||||||
|
|
|
@ -364,6 +364,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x14
|
SO_PASSCRED = 0x14
|
||||||
|
|
|
@ -368,6 +368,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x14
|
SO_PASSCRED = 0x14
|
||||||
|
|
|
@ -368,6 +368,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x14
|
SO_PASSCRED = 0x14
|
||||||
|
|
|
@ -297,6 +297,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x10
|
SO_PASSCRED = 0x10
|
||||||
|
|
|
@ -372,6 +372,7 @@ const (
|
||||||
SO_MARK = 0x24
|
SO_MARK = 0x24
|
||||||
SO_MAX_PACING_RATE = 0x2f
|
SO_MAX_PACING_RATE = 0x2f
|
||||||
SO_MEMINFO = 0x37
|
SO_MEMINFO = 0x37
|
||||||
|
SO_NETNS_COOKIE = 0x47
|
||||||
SO_NOFCS = 0x2b
|
SO_NOFCS = 0x2b
|
||||||
SO_OOBINLINE = 0xa
|
SO_OOBINLINE = 0xa
|
||||||
SO_PASSCRED = 0x10
|
SO_PASSCRED = 0x10
|
||||||
|
|
|
@ -363,6 +363,7 @@ const (
|
||||||
SO_MARK = 0x22
|
SO_MARK = 0x22
|
||||||
SO_MAX_PACING_RATE = 0x31
|
SO_MAX_PACING_RATE = 0x31
|
||||||
SO_MEMINFO = 0x39
|
SO_MEMINFO = 0x39
|
||||||
|
SO_NETNS_COOKIE = 0x50
|
||||||
SO_NOFCS = 0x27
|
SO_NOFCS = 0x27
|
||||||
SO_OOBINLINE = 0x100
|
SO_OOBINLINE = 0x100
|
||||||
SO_PASSCRED = 0x2
|
SO_PASSCRED = 0x2
|
||||||
|
|
|
@ -181,17 +181,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -191,17 +191,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func inotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -340,17 +340,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Lchown(path string, uid int, gid int) (err error) {
|
func Lchown(path string, uid int, gid int) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
|
|
@ -544,17 +544,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -544,17 +544,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -161,17 +161,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -191,17 +191,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -191,17 +191,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Ioperm(from int, num int, on int) (err error) {
|
func Ioperm(from int, num int, on int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on))
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
|
|
@ -191,17 +191,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Lchown(path string, uid int, gid int) (err error) {
|
func Lchown(path string, uid int, gid int) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
|
|
@ -180,17 +180,6 @@ func Getuid() (uid int) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func InotifyInit() (fd int, err error) {
|
|
||||||
r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
|
|
||||||
fd = int(r0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Lchown(path string, uid int, gid int) (err error) {
|
func Lchown(path string, uid int, gid int) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
|
|
@ -439,7 +439,9 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
SYS_MEMFD_SECRET = 447
|
||||||
)
|
)
|
||||||
|
|
|
@ -361,7 +361,9 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
SYS_MEMFD_SECRET = 447
|
||||||
)
|
)
|
||||||
|
|
|
@ -403,6 +403,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -306,7 +306,9 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
SYS_MEMFD_SECRET = 447
|
||||||
)
|
)
|
||||||
|
|
|
@ -424,6 +424,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 4440
|
SYS_PROCESS_MADVISE = 4440
|
||||||
SYS_EPOLL_PWAIT2 = 4441
|
SYS_EPOLL_PWAIT2 = 4441
|
||||||
SYS_MOUNT_SETATTR = 4442
|
SYS_MOUNT_SETATTR = 4442
|
||||||
|
SYS_QUOTACTL_FD = 4443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 4444
|
SYS_LANDLOCK_CREATE_RULESET = 4444
|
||||||
SYS_LANDLOCK_ADD_RULE = 4445
|
SYS_LANDLOCK_ADD_RULE = 4445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 4446
|
SYS_LANDLOCK_RESTRICT_SELF = 4446
|
||||||
|
|
|
@ -354,6 +354,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 5440
|
SYS_PROCESS_MADVISE = 5440
|
||||||
SYS_EPOLL_PWAIT2 = 5441
|
SYS_EPOLL_PWAIT2 = 5441
|
||||||
SYS_MOUNT_SETATTR = 5442
|
SYS_MOUNT_SETATTR = 5442
|
||||||
|
SYS_QUOTACTL_FD = 5443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 5444
|
SYS_LANDLOCK_CREATE_RULESET = 5444
|
||||||
SYS_LANDLOCK_ADD_RULE = 5445
|
SYS_LANDLOCK_ADD_RULE = 5445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 5446
|
SYS_LANDLOCK_RESTRICT_SELF = 5446
|
||||||
|
|
|
@ -354,6 +354,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 5440
|
SYS_PROCESS_MADVISE = 5440
|
||||||
SYS_EPOLL_PWAIT2 = 5441
|
SYS_EPOLL_PWAIT2 = 5441
|
||||||
SYS_MOUNT_SETATTR = 5442
|
SYS_MOUNT_SETATTR = 5442
|
||||||
|
SYS_QUOTACTL_FD = 5443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 5444
|
SYS_LANDLOCK_CREATE_RULESET = 5444
|
||||||
SYS_LANDLOCK_ADD_RULE = 5445
|
SYS_LANDLOCK_ADD_RULE = 5445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 5446
|
SYS_LANDLOCK_RESTRICT_SELF = 5446
|
||||||
|
|
|
@ -424,6 +424,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 4440
|
SYS_PROCESS_MADVISE = 4440
|
||||||
SYS_EPOLL_PWAIT2 = 4441
|
SYS_EPOLL_PWAIT2 = 4441
|
||||||
SYS_MOUNT_SETATTR = 4442
|
SYS_MOUNT_SETATTR = 4442
|
||||||
|
SYS_QUOTACTL_FD = 4443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 4444
|
SYS_LANDLOCK_CREATE_RULESET = 4444
|
||||||
SYS_LANDLOCK_ADD_RULE = 4445
|
SYS_LANDLOCK_ADD_RULE = 4445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 4446
|
SYS_LANDLOCK_RESTRICT_SELF = 4446
|
||||||
|
|
|
@ -431,6 +431,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -403,6 +403,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -403,6 +403,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -305,6 +305,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -368,6 +368,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -382,6 +382,7 @@ const (
|
||||||
SYS_PROCESS_MADVISE = 440
|
SYS_PROCESS_MADVISE = 440
|
||||||
SYS_EPOLL_PWAIT2 = 441
|
SYS_EPOLL_PWAIT2 = 441
|
||||||
SYS_MOUNT_SETATTR = 442
|
SYS_MOUNT_SETATTR = 442
|
||||||
|
SYS_QUOTACTL_FD = 443
|
||||||
SYS_LANDLOCK_CREATE_RULESET = 444
|
SYS_LANDLOCK_CREATE_RULESET = 444
|
||||||
SYS_LANDLOCK_ADD_RULE = 445
|
SYS_LANDLOCK_ADD_RULE = 445
|
||||||
SYS_LANDLOCK_RESTRICT_SELF = 446
|
SYS_LANDLOCK_RESTRICT_SELF = 446
|
||||||
|
|
|
@ -2356,8 +2356,8 @@ const (
|
||||||
SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000
|
SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000
|
||||||
SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000
|
SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x8000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0xffff
|
||||||
|
|
||||||
SCM_TSTAMP_SND = 0x0
|
SCM_TSTAMP_SND = 0x0
|
||||||
SCM_TSTAMP_SCHED = 0x1
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
@ -2933,7 +2933,7 @@ const (
|
||||||
DEVLINK_CMD_TRAP_POLICER_NEW = 0x47
|
DEVLINK_CMD_TRAP_POLICER_NEW = 0x47
|
||||||
DEVLINK_CMD_TRAP_POLICER_DEL = 0x48
|
DEVLINK_CMD_TRAP_POLICER_DEL = 0x48
|
||||||
DEVLINK_CMD_HEALTH_REPORTER_TEST = 0x49
|
DEVLINK_CMD_HEALTH_REPORTER_TEST = 0x49
|
||||||
DEVLINK_CMD_MAX = 0x49
|
DEVLINK_CMD_MAX = 0x4d
|
||||||
DEVLINK_PORT_TYPE_NOTSET = 0x0
|
DEVLINK_PORT_TYPE_NOTSET = 0x0
|
||||||
DEVLINK_PORT_TYPE_AUTO = 0x1
|
DEVLINK_PORT_TYPE_AUTO = 0x1
|
||||||
DEVLINK_PORT_TYPE_ETH = 0x2
|
DEVLINK_PORT_TYPE_ETH = 0x2
|
||||||
|
@ -3156,7 +3156,7 @@ const (
|
||||||
DEVLINK_ATTR_RELOAD_ACTION_INFO = 0xa2
|
DEVLINK_ATTR_RELOAD_ACTION_INFO = 0xa2
|
||||||
DEVLINK_ATTR_RELOAD_ACTION_STATS = 0xa3
|
DEVLINK_ATTR_RELOAD_ACTION_STATS = 0xa3
|
||||||
DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 0xa4
|
DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 0xa4
|
||||||
DEVLINK_ATTR_MAX = 0xa4
|
DEVLINK_ATTR_MAX = 0xa9
|
||||||
DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0
|
DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0
|
||||||
DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1
|
DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1
|
||||||
DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0
|
DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0
|
||||||
|
@ -3452,7 +3452,7 @@ const (
|
||||||
ETHTOOL_MSG_CABLE_TEST_ACT = 0x1a
|
ETHTOOL_MSG_CABLE_TEST_ACT = 0x1a
|
||||||
ETHTOOL_MSG_CABLE_TEST_TDR_ACT = 0x1b
|
ETHTOOL_MSG_CABLE_TEST_TDR_ACT = 0x1b
|
||||||
ETHTOOL_MSG_TUNNEL_INFO_GET = 0x1c
|
ETHTOOL_MSG_TUNNEL_INFO_GET = 0x1c
|
||||||
ETHTOOL_MSG_USER_MAX = 0x20
|
ETHTOOL_MSG_USER_MAX = 0x21
|
||||||
ETHTOOL_MSG_KERNEL_NONE = 0x0
|
ETHTOOL_MSG_KERNEL_NONE = 0x0
|
||||||
ETHTOOL_MSG_STRSET_GET_REPLY = 0x1
|
ETHTOOL_MSG_STRSET_GET_REPLY = 0x1
|
||||||
ETHTOOL_MSG_LINKINFO_GET_REPLY = 0x2
|
ETHTOOL_MSG_LINKINFO_GET_REPLY = 0x2
|
||||||
|
@ -3483,7 +3483,7 @@ const (
|
||||||
ETHTOOL_MSG_CABLE_TEST_NTF = 0x1b
|
ETHTOOL_MSG_CABLE_TEST_NTF = 0x1b
|
||||||
ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 0x1c
|
ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 0x1c
|
||||||
ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 0x1d
|
ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 0x1d
|
||||||
ETHTOOL_MSG_KERNEL_MAX = 0x21
|
ETHTOOL_MSG_KERNEL_MAX = 0x22
|
||||||
ETHTOOL_A_HEADER_UNSPEC = 0x0
|
ETHTOOL_A_HEADER_UNSPEC = 0x0
|
||||||
ETHTOOL_A_HEADER_DEV_INDEX = 0x1
|
ETHTOOL_A_HEADER_DEV_INDEX = 0x1
|
||||||
ETHTOOL_A_HEADER_DEV_NAME = 0x2
|
ETHTOOL_A_HEADER_DEV_NAME = 0x2
|
||||||
|
@ -3923,3 +3923,16 @@ const (
|
||||||
NFC_SDP_ATTR_URI = 0x1
|
NFC_SDP_ATTR_URI = 0x1
|
||||||
NFC_SDP_ATTR_SAP = 0x2
|
NFC_SDP_ATTR_SAP = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type LandlockRulesetAttr struct {
|
||||||
|
Access_fs uint64
|
||||||
|
}
|
||||||
|
|
||||||
|
type LandlockPathBeneathAttr struct {
|
||||||
|
Allowed_access uint64
|
||||||
|
Parent_fd int32
|
||||||
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
LANDLOCK_RULE_PATH_BENEATH = 0x1
|
||||||
|
)
|
||||||
|
|
|
@ -332,4 +332,36 @@ var abiTypes = map[[2]string]map[Kind]ABIType{
|
||||||
Decimal64: {8, 8, 8},
|
Decimal64: {8, 8, 8},
|
||||||
Decimal128: {16, 8, 8},
|
Decimal128: {16, 8, 8},
|
||||||
},
|
},
|
||||||
|
// gcc (FreeBSD Ports Collection) 10.3.0
|
||||||
|
{"freebsd", "amd64"}: {
|
||||||
|
Void: {1, 1, 1},
|
||||||
|
Bool: {1, 1, 1},
|
||||||
|
Char: {1, 1, 1},
|
||||||
|
SChar: {1, 1, 1},
|
||||||
|
UChar: {1, 1, 1},
|
||||||
|
Short: {2, 2, 2},
|
||||||
|
UShort: {2, 2, 2},
|
||||||
|
Enum: {4, 4, 4},
|
||||||
|
Int: {4, 4, 4},
|
||||||
|
UInt: {4, 4, 4},
|
||||||
|
Long: {8, 8, 8},
|
||||||
|
ULong: {8, 8, 8},
|
||||||
|
LongLong: {8, 8, 8},
|
||||||
|
ULongLong: {8, 8, 8},
|
||||||
|
Ptr: {8, 8, 8},
|
||||||
|
Function: {8, 8, 8},
|
||||||
|
Float: {4, 4, 4},
|
||||||
|
Double: {8, 8, 8},
|
||||||
|
LongDouble: {16, 16, 16},
|
||||||
|
Int8: {1, 1, 1},
|
||||||
|
UInt8: {1, 1, 1},
|
||||||
|
Int16: {2, 2, 2},
|
||||||
|
UInt16: {2, 2, 2},
|
||||||
|
Int32: {4, 4, 4},
|
||||||
|
UInt32: {4, 4, 4},
|
||||||
|
Int64: {8, 8, 8},
|
||||||
|
UInt64: {8, 8, 8},
|
||||||
|
Int128: {16, 16, 16},
|
||||||
|
UInt128: {16, 16, 16},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
Version = "3.9.2-20210323171250"
|
Version = "3.10.0-20210904132603"
|
||||||
|
|
||||||
experimentsEnvVar = "CCGO_EXPERIMENT"
|
experimentsEnvVar = "CCGO_EXPERIMENT"
|
||||||
maxSourceLine = 1 << 20
|
maxSourceLine = 1 << 20
|
||||||
|
@ -1213,7 +1213,7 @@ func (t *Task) createCompileDB(command []string) (rerr error) {
|
||||||
var parser func(s string) ([]string, error)
|
var parser func(s string) ([]string, error)
|
||||||
out:
|
out:
|
||||||
switch {
|
switch {
|
||||||
case t.goos == "darwin":
|
case t.goos == "darwin", t.goos == "freebsd":
|
||||||
if command[0] != "make" {
|
if command[0] != "make" {
|
||||||
return fmt.Errorf("usupported build command: %s", command[0])
|
return fmt.Errorf("usupported build command: %s", command[0])
|
||||||
}
|
}
|
||||||
|
@ -1566,6 +1566,7 @@ func (w *cdbMakeWriter) Write(b []byte) (int, error) {
|
||||||
w.fail(err)
|
w.fail(err)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(args) == 0 {
|
if len(args) == 0 {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
@ -1577,15 +1578,15 @@ func (w *cdbMakeWriter) Write(b []byte) (int, error) {
|
||||||
err = nil
|
err = nil
|
||||||
switch args[0] {
|
switch args[0] {
|
||||||
case w.cc:
|
case w.cc:
|
||||||
fmt.Println(args)
|
fmt.Printf("CCGO CC: %q\n", args)
|
||||||
err = w.handleGCC(args)
|
err = w.handleGCC(args)
|
||||||
case w.ar:
|
case w.ar:
|
||||||
if isCreateArchive(args[1]) {
|
if isCreateArchive(args[1]) {
|
||||||
fmt.Println(args)
|
fmt.Printf("CCGO AR: %q\n", args)
|
||||||
err = w.handleAR(args)
|
err = w.handleAR(args)
|
||||||
}
|
}
|
||||||
case "libtool":
|
case "libtool":
|
||||||
fmt.Println(args)
|
fmt.Printf("CCGO LIBTOOL: %q\n", args)
|
||||||
err = w.handleLibtool(args)
|
err = w.handleLibtool(args)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -11,5 +11,6 @@
|
||||||
Dan Kortschak <dan@kortschak.io>
|
Dan Kortschak <dan@kortschak.io>
|
||||||
Dan Peterson <danp@danp.net>
|
Dan Peterson <danp@danp.net>
|
||||||
Jan Mercl <0xjnml@gmail.com>
|
Jan Mercl <0xjnml@gmail.com>
|
||||||
Steffen Butzer <steffen(dot)butzer@outlook.com>
|
|
||||||
Jason DeBettencourt <jasond17@gmail.com>
|
Jason DeBettencourt <jasond17@gmail.com>
|
||||||
|
Koichi Shiraishi <zchee.io@gmail.com>
|
||||||
|
Steffen Butzer <steffen(dot)butzer@outlook.com>
|
||||||
|
|
|
@ -10,5 +10,6 @@ Dan Kortschak <dan@kortschak.io>
|
||||||
Dan Peterson <danp@danp.net>
|
Dan Peterson <danp@danp.net>
|
||||||
Jaap Aarts <jaap.aarts1@gmail.com>
|
Jaap Aarts <jaap.aarts1@gmail.com>
|
||||||
Jan Mercl <0xjnml@gmail.com>
|
Jan Mercl <0xjnml@gmail.com>
|
||||||
Steffen Butzer <steffen(dot)butzer@outlook.com>
|
|
||||||
Jason DeBettencourt <jasond17@gmail.com>
|
Jason DeBettencourt <jasond17@gmail.com>
|
||||||
|
Koichi Shiraishi <zchee.io@gmail.com>
|
||||||
|
Steffen Butzer <steffen(dot)butzer@outlook.com>
|
||||||
|
|
|
@ -1,10 +1,3 @@
|
||||||
Version 3 notes
|
|
||||||
|
|
||||||
Install:
|
Install:
|
||||||
|
|
||||||
$ go get modernc.org/crt/v3
|
$ go get modernc.org/libc
|
||||||
|
|
||||||
Version 3 is the transition from "all scalars are signed integers" (the QBE
|
|
||||||
model) to the more traditional "integers have signedness and pointers are not
|
|
||||||
exactly the same as integers" that is used by modernc.org/ccgo/v3. However, all
|
|
||||||
C pointers are of the same Go type: uintptr.
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
Copyright (c) 2017 The CRT Authors. All rights reserved.
|
Copyright (c) 2017 The Libc Authors. All rights reserved.
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
modification, are permitted provided that the following conditions are
|
modification, are permitted provided that the following conditions are
|
||||||
|
|
|
@ -50,6 +50,11 @@ darwin_arm64:
|
||||||
TARGET_GOOS=darwin TARGET_GOARCH=arm64 go generate
|
TARGET_GOOS=darwin TARGET_GOARCH=arm64 go generate
|
||||||
GOOS=darwin GOARCH=arm64 go build -v ./...
|
GOOS=darwin GOARCH=arm64 go build -v ./...
|
||||||
|
|
||||||
|
# only on freebsd/amd64
|
||||||
|
freebsd_amd64:
|
||||||
|
TARGET_GOOS=freebsd TARGET_GOARCH=amd64 go generate
|
||||||
|
GOOS=freebsd GOARCH=amd64 go build -v ./...
|
||||||
|
|
||||||
linux_amd64:
|
linux_amd64:
|
||||||
TARGET_GOOS=linux TARGET_GOARCH=amd64 go generate
|
TARGET_GOOS=linux TARGET_GOARCH=amd64 go generate
|
||||||
GOOS=linux GOARCH=amd64 go build -v ./...
|
GOOS=linux GOARCH=amd64 go build -v ./...
|
||||||
|
@ -84,6 +89,7 @@ all_targets: linux_amd64 linux_386 linux_arm linux_arm64 windows_amd64 windows_3
|
||||||
build_all_targets:
|
build_all_targets:
|
||||||
GOOS=darwin GOARCH=amd64 go build -v ./...
|
GOOS=darwin GOARCH=amd64 go build -v ./...
|
||||||
GOOS=darwin GOARCH=arm64 go build -v ./...
|
GOOS=darwin GOARCH=arm64 go build -v ./...
|
||||||
|
GOOS=freebsd GOARCH=amd64 go build -v ./...
|
||||||
GOOS=linux GOARCH=386 go build -v ./...
|
GOOS=linux GOARCH=386 go build -v ./...
|
||||||
GOOS=linux GOARCH=amd64 go build -v ./...
|
GOOS=linux GOARCH=amd64 go build -v ./...
|
||||||
GOOS=linux GOARCH=arm go build -v ./...
|
GOOS=linux GOARCH=arm go build -v ./...
|
||||||
|
|
|
@ -0,0 +1,421 @@
|
||||||
|
// Code generated by 'go generate' - DO NOT EDIT.
|
||||||
|
|
||||||
|
package libc // import "modernc.org/libc"
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{
|
||||||
|
"_CurrentRuneLocale": {},
|
||||||
|
"_DefaultRuneLocale": {},
|
||||||
|
"_IO_putc": {},
|
||||||
|
"_ThreadRuneLocale": {},
|
||||||
|
"___errno_location": {},
|
||||||
|
"___runetype": {},
|
||||||
|
"__assert": {},
|
||||||
|
"__assert_fail": {},
|
||||||
|
"__builtin___memcpy_chk": {},
|
||||||
|
"__builtin___memmove_chk": {},
|
||||||
|
"__builtin___memset_chk": {},
|
||||||
|
"__builtin___snprintf_chk": {},
|
||||||
|
"__builtin___sprintf_chk": {},
|
||||||
|
"__builtin___strcat_chk": {},
|
||||||
|
"__builtin___strcpy_chk": {},
|
||||||
|
"__builtin___strncpy_chk": {},
|
||||||
|
"__builtin___vsnprintf_chk": {},
|
||||||
|
"__builtin_abort": {},
|
||||||
|
"__builtin_abs": {},
|
||||||
|
"__builtin_add_overflowInt64": {},
|
||||||
|
"__builtin_add_overflowUint32": {},
|
||||||
|
"__builtin_add_overflowUint64": {},
|
||||||
|
"__builtin_bswap16": {},
|
||||||
|
"__builtin_bswap32": {},
|
||||||
|
"__builtin_bswap64": {},
|
||||||
|
"__builtin_clzll": {},
|
||||||
|
"__builtin_constant_p_impl": {},
|
||||||
|
"__builtin_copysign": {},
|
||||||
|
"__builtin_copysignf": {},
|
||||||
|
"__builtin_exit": {},
|
||||||
|
"__builtin_expect": {},
|
||||||
|
"__builtin_fabs": {},
|
||||||
|
"__builtin_free": {},
|
||||||
|
"__builtin_huge_val": {},
|
||||||
|
"__builtin_huge_valf": {},
|
||||||
|
"__builtin_inf": {},
|
||||||
|
"__builtin_inff": {},
|
||||||
|
"__builtin_isnan": {},
|
||||||
|
"__builtin_malloc": {},
|
||||||
|
"__builtin_memcmp": {},
|
||||||
|
"__builtin_memcpy": {},
|
||||||
|
"__builtin_memset": {},
|
||||||
|
"__builtin_mmap": {},
|
||||||
|
"__builtin_mul_overflowInt64": {},
|
||||||
|
"__builtin_mul_overflowUint128": {},
|
||||||
|
"__builtin_mul_overflowUint64": {},
|
||||||
|
"__builtin_nanf": {},
|
||||||
|
"__builtin_object_size": {},
|
||||||
|
"__builtin_popcount": {},
|
||||||
|
"__builtin_prefetch": {},
|
||||||
|
"__builtin_printf": {},
|
||||||
|
"__builtin_snprintf": {},
|
||||||
|
"__builtin_sprintf": {},
|
||||||
|
"__builtin_strchr": {},
|
||||||
|
"__builtin_strcmp": {},
|
||||||
|
"__builtin_strcpy": {},
|
||||||
|
"__builtin_strlen": {},
|
||||||
|
"__builtin_sub_overflowInt64": {},
|
||||||
|
"__builtin_trap": {},
|
||||||
|
"__builtin_unreachable": {},
|
||||||
|
"__ccgo_in6addr_anyp": {},
|
||||||
|
"__ccgo_sqlite3_log": {},
|
||||||
|
"__cmsg_nxthdr": {},
|
||||||
|
"__ctype_b_loc": {},
|
||||||
|
"__ctype_get_mb_cur_max": {},
|
||||||
|
"__errno_location": {},
|
||||||
|
"__error": {},
|
||||||
|
"__floatscan": {},
|
||||||
|
"__h_errno_location": {},
|
||||||
|
"__inet_aton": {},
|
||||||
|
"__inet_ntoa": {},
|
||||||
|
"__intscan": {},
|
||||||
|
"__isalnum_l": {},
|
||||||
|
"__isalpha_l": {},
|
||||||
|
"__isdigit_l": {},
|
||||||
|
"__isnan": {},
|
||||||
|
"__isnanf": {},
|
||||||
|
"__isnanl": {},
|
||||||
|
"__isoc99_sscanf": {},
|
||||||
|
"__isthreaded": {},
|
||||||
|
"__lookup_ipliteral": {},
|
||||||
|
"__lookup_name": {},
|
||||||
|
"__lookup_serv": {},
|
||||||
|
"__mb_sb_limit": {},
|
||||||
|
"__runes_for_locale": {},
|
||||||
|
"__shgetc": {},
|
||||||
|
"__shlim": {},
|
||||||
|
"__stderrp": {},
|
||||||
|
"__stdinp": {},
|
||||||
|
"__stdoutp": {},
|
||||||
|
"__swbuf": {},
|
||||||
|
"__syscall1": {},
|
||||||
|
"__syscall3": {},
|
||||||
|
"__syscall4": {},
|
||||||
|
"__toread": {},
|
||||||
|
"__toread_needs_stdio_exit": {},
|
||||||
|
"__uflow": {},
|
||||||
|
"__xuname": {},
|
||||||
|
"_exit": {},
|
||||||
|
"_obstack_begin": {},
|
||||||
|
"_obstack_newchunk": {},
|
||||||
|
"abort": {},
|
||||||
|
"abs": {},
|
||||||
|
"accept": {},
|
||||||
|
"access": {},
|
||||||
|
"acos": {},
|
||||||
|
"acosh": {},
|
||||||
|
"alarm": {},
|
||||||
|
"asin": {},
|
||||||
|
"asinh": {},
|
||||||
|
"atan": {},
|
||||||
|
"atan2": {},
|
||||||
|
"atanh": {},
|
||||||
|
"atexit": {},
|
||||||
|
"atof": {},
|
||||||
|
"atoi": {},
|
||||||
|
"atol": {},
|
||||||
|
"backtrace": {},
|
||||||
|
"backtrace_symbols_fd": {},
|
||||||
|
"bind": {},
|
||||||
|
"calloc": {},
|
||||||
|
"ceil": {},
|
||||||
|
"ceilf": {},
|
||||||
|
"cfgetospeed": {},
|
||||||
|
"cfsetispeed": {},
|
||||||
|
"cfsetospeed": {},
|
||||||
|
"chdir": {},
|
||||||
|
"chflags": {},
|
||||||
|
"chmod": {},
|
||||||
|
"chown": {},
|
||||||
|
"clock_gettime": {},
|
||||||
|
"close": {},
|
||||||
|
"closedir": {},
|
||||||
|
"confstr": {},
|
||||||
|
"connect": {},
|
||||||
|
"copysign": {},
|
||||||
|
"copysignf": {},
|
||||||
|
"copysignl": {},
|
||||||
|
"cos": {},
|
||||||
|
"cosf": {},
|
||||||
|
"cosh": {},
|
||||||
|
"ctime": {},
|
||||||
|
"ctime_r": {},
|
||||||
|
"dlclose": {},
|
||||||
|
"dlerror": {},
|
||||||
|
"dlopen": {},
|
||||||
|
"dlsym": {},
|
||||||
|
"dup2": {},
|
||||||
|
"endpwent": {},
|
||||||
|
"environ": {},
|
||||||
|
"execvp": {},
|
||||||
|
"exit": {},
|
||||||
|
"exp": {},
|
||||||
|
"fabs": {},
|
||||||
|
"fabsf": {},
|
||||||
|
"fabsl": {},
|
||||||
|
"fchmod": {},
|
||||||
|
"fchown": {},
|
||||||
|
"fclose": {},
|
||||||
|
"fcntl": {},
|
||||||
|
"fcntl64": {},
|
||||||
|
"fdopen": {},
|
||||||
|
"ferror": {},
|
||||||
|
"fflush": {},
|
||||||
|
"fgetc": {},
|
||||||
|
"fgets": {},
|
||||||
|
"fileno": {},
|
||||||
|
"floor": {},
|
||||||
|
"fmod": {},
|
||||||
|
"fmodl": {},
|
||||||
|
"fopen": {},
|
||||||
|
"fopen64": {},
|
||||||
|
"fork": {},
|
||||||
|
"fprintf": {},
|
||||||
|
"fputc": {},
|
||||||
|
"fputs": {},
|
||||||
|
"fread": {},
|
||||||
|
"free": {},
|
||||||
|
"freeaddrinfo": {},
|
||||||
|
"frexp": {},
|
||||||
|
"fscanf": {},
|
||||||
|
"fseek": {},
|
||||||
|
"fstat": {},
|
||||||
|
"fstat64": {},
|
||||||
|
"fsync": {},
|
||||||
|
"ftell": {},
|
||||||
|
"ftruncate": {},
|
||||||
|
"fts64_close": {},
|
||||||
|
"fts64_open": {},
|
||||||
|
"fts64_read": {},
|
||||||
|
"fts_close": {},
|
||||||
|
"fts_open": {},
|
||||||
|
"fts_read": {},
|
||||||
|
"fwrite": {},
|
||||||
|
"gai_strerror": {},
|
||||||
|
"getaddrinfo": {},
|
||||||
|
"getc": {},
|
||||||
|
"getcwd": {},
|
||||||
|
"getegid": {},
|
||||||
|
"getenv": {},
|
||||||
|
"geteuid": {},
|
||||||
|
"getgid": {},
|
||||||
|
"getgrgid": {},
|
||||||
|
"getgrgid_r": {},
|
||||||
|
"getgrnam": {},
|
||||||
|
"getgrnam_r": {},
|
||||||
|
"gethostbyaddr": {},
|
||||||
|
"gethostbyaddr_r": {},
|
||||||
|
"gethostbyname": {},
|
||||||
|
"gethostbyname2": {},
|
||||||
|
"gethostbyname2_r": {},
|
||||||
|
"gethostname": {},
|
||||||
|
"getnameinfo": {},
|
||||||
|
"getpeername": {},
|
||||||
|
"getpid": {},
|
||||||
|
"getpwnam": {},
|
||||||
|
"getpwnam_r": {},
|
||||||
|
"getpwuid": {},
|
||||||
|
"getpwuid_r": {},
|
||||||
|
"getresgid": {},
|
||||||
|
"getresuid": {},
|
||||||
|
"getrlimit": {},
|
||||||
|
"getrlimit64": {},
|
||||||
|
"getrusage": {},
|
||||||
|
"getservbyname": {},
|
||||||
|
"getsockname": {},
|
||||||
|
"getsockopt": {},
|
||||||
|
"gettimeofday": {},
|
||||||
|
"getuid": {},
|
||||||
|
"gmtime_r": {},
|
||||||
|
"h_errno": {},
|
||||||
|
"htonl": {},
|
||||||
|
"htons": {},
|
||||||
|
"hypot": {},
|
||||||
|
"inet_ntoa": {},
|
||||||
|
"inet_ntop": {},
|
||||||
|
"inet_pton": {},
|
||||||
|
"initstate_r": {},
|
||||||
|
"ioctl": {},
|
||||||
|
"isalnum": {},
|
||||||
|
"isalpha": {},
|
||||||
|
"isatty": {},
|
||||||
|
"isdigit": {},
|
||||||
|
"isnan": {},
|
||||||
|
"isnanf": {},
|
||||||
|
"isnanl": {},
|
||||||
|
"kill": {},
|
||||||
|
"ldexp": {},
|
||||||
|
"link": {},
|
||||||
|
"listen": {},
|
||||||
|
"localtime": {},
|
||||||
|
"localtime_r": {},
|
||||||
|
"log": {},
|
||||||
|
"log10": {},
|
||||||
|
"lrand48": {},
|
||||||
|
"lseek": {},
|
||||||
|
"lseek64": {},
|
||||||
|
"lstat": {},
|
||||||
|
"lstat64": {},
|
||||||
|
"malloc": {},
|
||||||
|
"mblen": {},
|
||||||
|
"mbstowcs": {},
|
||||||
|
"mbtowc": {},
|
||||||
|
"memchr": {},
|
||||||
|
"memcmp": {},
|
||||||
|
"memcpy": {},
|
||||||
|
"memmove": {},
|
||||||
|
"memset": {},
|
||||||
|
"mkdir": {},
|
||||||
|
"mkfifo": {},
|
||||||
|
"mknod": {},
|
||||||
|
"mkstemp": {},
|
||||||
|
"mkstemp64": {},
|
||||||
|
"mkstemps": {},
|
||||||
|
"mkstemps64": {},
|
||||||
|
"mktime": {},
|
||||||
|
"mmap": {},
|
||||||
|
"modf": {},
|
||||||
|
"munmap": {},
|
||||||
|
"nl_langinfo": {},
|
||||||
|
"ntohs": {},
|
||||||
|
"obstack_free": {},
|
||||||
|
"obstack_vprintf": {},
|
||||||
|
"open": {},
|
||||||
|
"open64": {},
|
||||||
|
"opendir": {},
|
||||||
|
"openpty": {},
|
||||||
|
"pathconf": {},
|
||||||
|
"pause": {},
|
||||||
|
"pclose": {},
|
||||||
|
"perror": {},
|
||||||
|
"pipe": {},
|
||||||
|
"poll": {},
|
||||||
|
"popen": {},
|
||||||
|
"posix_fadvise": {},
|
||||||
|
"pow": {},
|
||||||
|
"printf": {},
|
||||||
|
"pselect": {},
|
||||||
|
"putc": {},
|
||||||
|
"putchar": {},
|
||||||
|
"puts": {},
|
||||||
|
"qsort": {},
|
||||||
|
"raise": {},
|
||||||
|
"rand": {},
|
||||||
|
"random": {},
|
||||||
|
"random_r": {},
|
||||||
|
"read": {},
|
||||||
|
"readdir": {},
|
||||||
|
"readdir64": {},
|
||||||
|
"readlink": {},
|
||||||
|
"readv": {},
|
||||||
|
"realloc": {},
|
||||||
|
"realpath": {},
|
||||||
|
"recv": {},
|
||||||
|
"recvfrom": {},
|
||||||
|
"recvmsg": {},
|
||||||
|
"remove": {},
|
||||||
|
"rename": {},
|
||||||
|
"rewind": {},
|
||||||
|
"rmdir": {},
|
||||||
|
"round": {},
|
||||||
|
"scalbn": {},
|
||||||
|
"scalbnl": {},
|
||||||
|
"sched_yield": {},
|
||||||
|
"select": {},
|
||||||
|
"send": {},
|
||||||
|
"sendmsg": {},
|
||||||
|
"sendto": {},
|
||||||
|
"setbuf": {},
|
||||||
|
"setenv": {},
|
||||||
|
"setlocale": {},
|
||||||
|
"setrlimit": {},
|
||||||
|
"setrlimit64": {},
|
||||||
|
"setsid": {},
|
||||||
|
"setsockopt": {},
|
||||||
|
"setvbuf": {},
|
||||||
|
"shmat": {},
|
||||||
|
"shmctl": {},
|
||||||
|
"shmdt": {},
|
||||||
|
"shutdown": {},
|
||||||
|
"sigaction": {},
|
||||||
|
"signal": {},
|
||||||
|
"sin": {},
|
||||||
|
"sinf": {},
|
||||||
|
"sinh": {},
|
||||||
|
"sleep": {},
|
||||||
|
"snprintf": {},
|
||||||
|
"socket": {},
|
||||||
|
"sprintf": {},
|
||||||
|
"sqrt": {},
|
||||||
|
"srand48": {},
|
||||||
|
"sscanf": {},
|
||||||
|
"stat": {},
|
||||||
|
"stat64": {},
|
||||||
|
"stderr": {},
|
||||||
|
"stdin": {},
|
||||||
|
"stdout": {},
|
||||||
|
"strcasecmp": {},
|
||||||
|
"strcat": {},
|
||||||
|
"strchr": {},
|
||||||
|
"strcmp": {},
|
||||||
|
"strcpy": {},
|
||||||
|
"strcspn": {},
|
||||||
|
"strdup": {},
|
||||||
|
"strerror": {},
|
||||||
|
"strlen": {},
|
||||||
|
"strncmp": {},
|
||||||
|
"strncpy": {},
|
||||||
|
"strnlen": {},
|
||||||
|
"strpbrk": {},
|
||||||
|
"strrchr": {},
|
||||||
|
"strspn": {},
|
||||||
|
"strstr": {},
|
||||||
|
"strtod": {},
|
||||||
|
"strtof": {},
|
||||||
|
"strtoimax": {},
|
||||||
|
"strtol": {},
|
||||||
|
"strtold": {},
|
||||||
|
"strtoll": {},
|
||||||
|
"strtoul": {},
|
||||||
|
"strtoull": {},
|
||||||
|
"strtoumax": {},
|
||||||
|
"symlink": {},
|
||||||
|
"sysconf": {},
|
||||||
|
"system": {},
|
||||||
|
"tan": {},
|
||||||
|
"tanh": {},
|
||||||
|
"tcgetattr": {},
|
||||||
|
"tcsendbreak": {},
|
||||||
|
"tcsetattr": {},
|
||||||
|
"time": {},
|
||||||
|
"tolower": {},
|
||||||
|
"toupper": {},
|
||||||
|
"trunc": {},
|
||||||
|
"tzset": {},
|
||||||
|
"umask": {},
|
||||||
|
"uname": {},
|
||||||
|
"ungetc": {},
|
||||||
|
"unlink": {},
|
||||||
|
"unsetenv": {},
|
||||||
|
"usleep": {},
|
||||||
|
"utime": {},
|
||||||
|
"utimes": {},
|
||||||
|
"vasprintf": {},
|
||||||
|
"vfprintf": {},
|
||||||
|
"vprintf": {},
|
||||||
|
"vsnprintf": {},
|
||||||
|
"vsprintf": {},
|
||||||
|
"waitpid": {},
|
||||||
|
"wcschr": {},
|
||||||
|
"wctomb": {},
|
||||||
|
"wcwidth": {},
|
||||||
|
"write": {},
|
||||||
|
"writev": {},
|
||||||
|
"zero_struct_address": {},
|
||||||
|
}
|
|
@ -310,36 +310,11 @@ var CAPI = map[string]struct{}{
|
||||||
"pow": {},
|
"pow": {},
|
||||||
"printf": {},
|
"printf": {},
|
||||||
"pselect": {},
|
"pselect": {},
|
||||||
"pthread_attr_destroy": {},
|
|
||||||
"pthread_attr_getdetachstate": {},
|
"pthread_attr_getdetachstate": {},
|
||||||
"pthread_attr_init": {},
|
|
||||||
"pthread_attr_setdetachstate": {},
|
"pthread_attr_setdetachstate": {},
|
||||||
"pthread_attr_setscope": {},
|
|
||||||
"pthread_attr_setstacksize": {},
|
|
||||||
"pthread_cond_broadcast": {},
|
|
||||||
"pthread_cond_destroy": {},
|
|
||||||
"pthread_cond_init": {},
|
|
||||||
"pthread_cond_signal": {},
|
|
||||||
"pthread_cond_timedwait": {},
|
|
||||||
"pthread_cond_wait": {},
|
|
||||||
"pthread_create": {},
|
|
||||||
"pthread_detach": {},
|
|
||||||
"pthread_equal": {},
|
|
||||||
"pthread_exit": {},
|
|
||||||
"pthread_getspecific": {},
|
|
||||||
"pthread_join": {},
|
|
||||||
"pthread_key_create": {},
|
|
||||||
"pthread_key_delete": {},
|
|
||||||
"pthread_mutex_destroy": {},
|
|
||||||
"pthread_mutex_init": {},
|
|
||||||
"pthread_mutex_lock": {},
|
|
||||||
"pthread_mutex_trylock": {},
|
|
||||||
"pthread_mutex_unlock": {},
|
|
||||||
"pthread_mutexattr_destroy": {},
|
"pthread_mutexattr_destroy": {},
|
||||||
"pthread_mutexattr_init": {},
|
"pthread_mutexattr_init": {},
|
||||||
"pthread_mutexattr_settype": {},
|
"pthread_mutexattr_settype": {},
|
||||||
"pthread_self": {},
|
|
||||||
"pthread_setspecific": {},
|
|
||||||
"putc": {},
|
"putc": {},
|
||||||
"putchar": {},
|
"putchar": {},
|
||||||
"puts": {},
|
"puts": {},
|
||||||
|
|
|
@ -3,420 +3,441 @@
|
||||||
package libc // import "modernc.org/libc"
|
package libc // import "modernc.org/libc"
|
||||||
|
|
||||||
var CAPI = map[string]struct{}{
|
var CAPI = map[string]struct{}{
|
||||||
"_IO_putc": {},
|
"_IO_putc": {},
|
||||||
"___errno_location": {},
|
"___errno_location": {},
|
||||||
"__assert_fail": {},
|
"__assert_fail": {},
|
||||||
"__builtin___memcpy_chk": {},
|
"__builtin___memcpy_chk": {},
|
||||||
"__builtin___memmove_chk": {},
|
"__builtin___memmove_chk": {},
|
||||||
"__builtin___memset_chk": {},
|
"__builtin___memset_chk": {},
|
||||||
"__builtin___snprintf_chk": {},
|
"__builtin___snprintf_chk": {},
|
||||||
"__builtin___sprintf_chk": {},
|
"__builtin___sprintf_chk": {},
|
||||||
"__builtin___strcat_chk": {},
|
"__builtin___strcat_chk": {},
|
||||||
"__builtin___strcpy_chk": {},
|
"__builtin___strcpy_chk": {},
|
||||||
"__builtin___strncpy_chk": {},
|
"__builtin___strncpy_chk": {},
|
||||||
"__builtin___vsnprintf_chk": {},
|
"__builtin___vsnprintf_chk": {},
|
||||||
"__builtin_abort": {},
|
"__builtin_abort": {},
|
||||||
"__builtin_abs": {},
|
"__builtin_abs": {},
|
||||||
"__builtin_add_overflowInt64": {},
|
"__builtin_add_overflowInt64": {},
|
||||||
"__builtin_add_overflowUint32": {},
|
"__builtin_add_overflowUint32": {},
|
||||||
"__builtin_add_overflowUint64": {},
|
"__builtin_add_overflowUint64": {},
|
||||||
"__builtin_bswap16": {},
|
"__builtin_bswap16": {},
|
||||||
"__builtin_bswap32": {},
|
"__builtin_bswap32": {},
|
||||||
"__builtin_bswap64": {},
|
"__builtin_bswap64": {},
|
||||||
"__builtin_clzll": {},
|
"__builtin_clzll": {},
|
||||||
"__builtin_constant_p_impl": {},
|
"__builtin_constant_p_impl": {},
|
||||||
"__builtin_copysign": {},
|
"__builtin_copysign": {},
|
||||||
"__builtin_copysignf": {},
|
"__builtin_copysignf": {},
|
||||||
"__builtin_exit": {},
|
"__builtin_exit": {},
|
||||||
"__builtin_expect": {},
|
"__builtin_expect": {},
|
||||||
"__builtin_fabs": {},
|
"__builtin_fabs": {},
|
||||||
"__builtin_free": {},
|
"__builtin_free": {},
|
||||||
"__builtin_huge_val": {},
|
"__builtin_huge_val": {},
|
||||||
"__builtin_huge_valf": {},
|
"__builtin_huge_valf": {},
|
||||||
"__builtin_inf": {},
|
"__builtin_inf": {},
|
||||||
"__builtin_inff": {},
|
"__builtin_inff": {},
|
||||||
"__builtin_isnan": {},
|
"__builtin_isnan": {},
|
||||||
"__builtin_malloc": {},
|
"__builtin_malloc": {},
|
||||||
"__builtin_memcmp": {},
|
"__builtin_memcmp": {},
|
||||||
"__builtin_memcpy": {},
|
"__builtin_memcpy": {},
|
||||||
"__builtin_memset": {},
|
"__builtin_memset": {},
|
||||||
"__builtin_mmap": {},
|
"__builtin_mmap": {},
|
||||||
"__builtin_mul_overflowInt64": {},
|
"__builtin_mul_overflowInt64": {},
|
||||||
"__builtin_mul_overflowUint128": {},
|
"__builtin_mul_overflowUint128": {},
|
||||||
"__builtin_mul_overflowUint64": {},
|
"__builtin_mul_overflowUint64": {},
|
||||||
"__builtin_nanf": {},
|
"__builtin_nanf": {},
|
||||||
"__builtin_object_size": {},
|
"__builtin_object_size": {},
|
||||||
"__builtin_popcount": {},
|
"__builtin_popcount": {},
|
||||||
"__builtin_prefetch": {},
|
"__builtin_prefetch": {},
|
||||||
"__builtin_printf": {},
|
"__builtin_printf": {},
|
||||||
"__builtin_snprintf": {},
|
"__builtin_snprintf": {},
|
||||||
"__builtin_sprintf": {},
|
"__builtin_sprintf": {},
|
||||||
"__builtin_strchr": {},
|
"__builtin_strchr": {},
|
||||||
"__builtin_strcmp": {},
|
"__builtin_strcmp": {},
|
||||||
"__builtin_strcpy": {},
|
"__builtin_strcpy": {},
|
||||||
"__builtin_strlen": {},
|
"__builtin_strlen": {},
|
||||||
"__builtin_sub_overflowInt64": {},
|
"__builtin_sub_overflowInt64": {},
|
||||||
"__builtin_trap": {},
|
"__builtin_trap": {},
|
||||||
"__builtin_unreachable": {},
|
"__builtin_unreachable": {},
|
||||||
"__ccgo_in6addr_anyp": {},
|
"__ccgo_getMutexType": {},
|
||||||
"__ccgo_sqlite3_log": {},
|
"__ccgo_in6addr_anyp": {},
|
||||||
"__cmsg_nxthdr": {},
|
"__ccgo_pthreadAttrGetDetachState": {},
|
||||||
"__ctype_b_loc": {},
|
"__ccgo_pthreadMutexattrGettype": {},
|
||||||
"__ctype_get_mb_cur_max": {},
|
"__ccgo_sqlite3_log": {},
|
||||||
"__errno_location": {},
|
"__cmsg_nxthdr": {},
|
||||||
"__floatscan": {},
|
"__ctype_b_loc": {},
|
||||||
"__fpclassify": {},
|
"__ctype_get_mb_cur_max": {},
|
||||||
"__fpclassifyf": {},
|
"__errno_location": {},
|
||||||
"__fpclassifyl": {},
|
"__floatscan": {},
|
||||||
"__h_errno_location": {},
|
"__fpclassify": {},
|
||||||
"__inet_aton": {},
|
"__fpclassifyf": {},
|
||||||
"__intscan": {},
|
"__fpclassifyl": {},
|
||||||
"__isalnum_l": {},
|
"__fsmu8": {},
|
||||||
"__isalpha_l": {},
|
"__h_errno_location": {},
|
||||||
"__isdigit_l": {},
|
"__inet_aton": {},
|
||||||
"__islower_l": {},
|
"__intscan": {},
|
||||||
"__isnan": {},
|
"__isalnum_l": {},
|
||||||
"__isnanf": {},
|
"__isalpha_l": {},
|
||||||
"__isnanl": {},
|
"__isdigit_l": {},
|
||||||
"__isoc99_sscanf": {},
|
"__islower_l": {},
|
||||||
"__isprint_l": {},
|
"__isnan": {},
|
||||||
"__isupper_l": {},
|
"__isnanf": {},
|
||||||
"__isxdigit_l": {},
|
"__isnanl": {},
|
||||||
"__lookup_ipliteral": {},
|
"__isoc99_sscanf": {},
|
||||||
"__lookup_name": {},
|
"__isprint_l": {},
|
||||||
"__lookup_serv": {},
|
"__isupper_l": {},
|
||||||
"__shgetc": {},
|
"__isxdigit_l": {},
|
||||||
"__shlim": {},
|
"__lockfile": {},
|
||||||
"__strncasecmp_l": {},
|
"__lookup_ipliteral": {},
|
||||||
"__syscall1": {},
|
"__lookup_name": {},
|
||||||
"__syscall3": {},
|
"__lookup_serv": {},
|
||||||
"__toread": {},
|
"__shgetc": {},
|
||||||
"__toread_needs_stdio_exit": {},
|
"__shlim": {},
|
||||||
"__uflow": {},
|
"__strncasecmp_l": {},
|
||||||
"_exit": {},
|
"__syscall1": {},
|
||||||
"_obstack_begin": {},
|
"__syscall3": {},
|
||||||
"_obstack_newchunk": {},
|
"__syscall4": {},
|
||||||
"abort": {},
|
"__toread": {},
|
||||||
"abs": {},
|
"__toread_needs_stdio_exit": {},
|
||||||
"accept": {},
|
"__uflow": {},
|
||||||
"access": {},
|
"__unlockfile": {},
|
||||||
"acos": {},
|
"_exit": {},
|
||||||
"acosh": {},
|
"_obstack_begin": {},
|
||||||
"alarm": {},
|
"_obstack_newchunk": {},
|
||||||
"asin": {},
|
"abort": {},
|
||||||
"asinh": {},
|
"abs": {},
|
||||||
"atan": {},
|
"accept": {},
|
||||||
"atan2": {},
|
"access": {},
|
||||||
"atanh": {},
|
"acos": {},
|
||||||
"atexit": {},
|
"acosh": {},
|
||||||
"atof": {},
|
"alarm": {},
|
||||||
"atoi": {},
|
"asin": {},
|
||||||
"atol": {},
|
"asinh": {},
|
||||||
"backtrace": {},
|
"atan": {},
|
||||||
"backtrace_symbols_fd": {},
|
"atan2": {},
|
||||||
"bind": {},
|
"atanh": {},
|
||||||
"calloc": {},
|
"atexit": {},
|
||||||
"ceil": {},
|
"atof": {},
|
||||||
"ceilf": {},
|
"atoi": {},
|
||||||
"cfgetospeed": {},
|
"atol": {},
|
||||||
"cfsetispeed": {},
|
"backtrace": {},
|
||||||
"cfsetospeed": {},
|
"backtrace_symbols_fd": {},
|
||||||
"chdir": {},
|
"bind": {},
|
||||||
"chmod": {},
|
"calloc": {},
|
||||||
"chown": {},
|
"ceil": {},
|
||||||
"clock_gettime": {},
|
"ceilf": {},
|
||||||
"close": {},
|
"cfgetospeed": {},
|
||||||
"closedir": {},
|
"cfsetispeed": {},
|
||||||
"confstr": {},
|
"cfsetospeed": {},
|
||||||
"connect": {},
|
"chdir": {},
|
||||||
"copysign": {},
|
"chmod": {},
|
||||||
"copysignf": {},
|
"chown": {},
|
||||||
"copysignl": {},
|
"clock_gettime": {},
|
||||||
"cos": {},
|
"close": {},
|
||||||
"cosf": {},
|
"closedir": {},
|
||||||
"cosh": {},
|
"confstr": {},
|
||||||
"ctime": {},
|
"connect": {},
|
||||||
"dlclose": {},
|
"copysign": {},
|
||||||
"dlerror": {},
|
"copysignf": {},
|
||||||
"dlopen": {},
|
"copysignl": {},
|
||||||
"dlsym": {},
|
"cos": {},
|
||||||
"dup2": {},
|
"cosf": {},
|
||||||
"endpwent": {},
|
"cosh": {},
|
||||||
"environ": {},
|
"ctime": {},
|
||||||
"execvp": {},
|
"ctime_r": {},
|
||||||
"exit": {},
|
"dlclose": {},
|
||||||
"exp": {},
|
"dlerror": {},
|
||||||
"fabs": {},
|
"dlopen": {},
|
||||||
"fabsf": {},
|
"dlsym": {},
|
||||||
"fabsl": {},
|
"dup2": {},
|
||||||
"fchmod": {},
|
"endpwent": {},
|
||||||
"fchown": {},
|
"environ": {},
|
||||||
"fclose": {},
|
"execvp": {},
|
||||||
"fcntl": {},
|
"exit": {},
|
||||||
"fcntl64": {},
|
"exp": {},
|
||||||
"fdopen": {},
|
"fabs": {},
|
||||||
"ferror": {},
|
"fabsf": {},
|
||||||
"fflush": {},
|
"fabsl": {},
|
||||||
"fgetc": {},
|
"fchmod": {},
|
||||||
"fgets": {},
|
"fchown": {},
|
||||||
"fileno": {},
|
"fclose": {},
|
||||||
"floor": {},
|
"fcntl": {},
|
||||||
"fmod": {},
|
"fcntl64": {},
|
||||||
"fmodl": {},
|
"fdopen": {},
|
||||||
"fopen": {},
|
"ferror": {},
|
||||||
"fopen64": {},
|
"fflush": {},
|
||||||
"fork": {},
|
"fgetc": {},
|
||||||
"fprintf": {},
|
"fgets": {},
|
||||||
"fputc": {},
|
"fileno": {},
|
||||||
"fputs": {},
|
"floor": {},
|
||||||
"fread": {},
|
"fmod": {},
|
||||||
"free": {},
|
"fmodl": {},
|
||||||
"freeaddrinfo": {},
|
"fopen": {},
|
||||||
"frexp": {},
|
"fopen64": {},
|
||||||
"fscanf": {},
|
"fork": {},
|
||||||
"fseek": {},
|
"fprintf": {},
|
||||||
"fstat": {},
|
"fputc": {},
|
||||||
"fstat64": {},
|
"fputs": {},
|
||||||
"fsync": {},
|
"fread": {},
|
||||||
"ftell": {},
|
"free": {},
|
||||||
"ftruncate": {},
|
"freeaddrinfo": {},
|
||||||
"ftruncate64": {},
|
"frexp": {},
|
||||||
"fts64_close": {},
|
"fscanf": {},
|
||||||
"fts64_open": {},
|
"fseek": {},
|
||||||
"fts64_read": {},
|
"fstat": {},
|
||||||
"fts_close": {},
|
"fstat64": {},
|
||||||
"fts_open": {},
|
"fsync": {},
|
||||||
"fts_read": {},
|
"ftell": {},
|
||||||
"fwrite": {},
|
"ftruncate": {},
|
||||||
"gai_strerror": {},
|
"ftruncate64": {},
|
||||||
"getaddrinfo": {},
|
"fts64_close": {},
|
||||||
"getc": {},
|
"fts64_open": {},
|
||||||
"getcwd": {},
|
"fts64_read": {},
|
||||||
"getegid": {},
|
"fts_close": {},
|
||||||
"getenv": {},
|
"fts_open": {},
|
||||||
"geteuid": {},
|
"fts_read": {},
|
||||||
"getgid": {},
|
"fwrite": {},
|
||||||
"getgrgid": {},
|
"gai_strerror": {},
|
||||||
"getgrnam": {},
|
"getaddrinfo": {},
|
||||||
"gethostbyaddr": {},
|
"getc": {},
|
||||||
"gethostbyaddr_r": {},
|
"getcwd": {},
|
||||||
"gethostbyname": {},
|
"getegid": {},
|
||||||
"gethostbyname2": {},
|
"getenv": {},
|
||||||
"gethostbyname2_r": {},
|
"geteuid": {},
|
||||||
"gethostname": {},
|
"getgid": {},
|
||||||
"getnameinfo": {},
|
"getgrgid": {},
|
||||||
"getpeername": {},
|
"getgrgid_r": {},
|
||||||
"getpid": {},
|
"getgrnam": {},
|
||||||
"getpwnam": {},
|
"getgrnam_r": {},
|
||||||
"getpwnam_r": {},
|
"gethostbyaddr": {},
|
||||||
"getpwuid": {},
|
"gethostbyaddr_r": {},
|
||||||
"getpwuid_r": {},
|
"gethostbyname": {},
|
||||||
"getresgid": {},
|
"gethostbyname2": {},
|
||||||
"getresuid": {},
|
"gethostbyname2_r": {},
|
||||||
"getrlimit": {},
|
"gethostbyname_r": {},
|
||||||
"getrlimit64": {},
|
"gethostname": {},
|
||||||
"getrusage": {},
|
"getnameinfo": {},
|
||||||
"getservbyname": {},
|
"getpeername": {},
|
||||||
"getsockname": {},
|
"getpid": {},
|
||||||
"getsockopt": {},
|
"getpwnam": {},
|
||||||
"gettimeofday": {},
|
"getpwnam_r": {},
|
||||||
"getuid": {},
|
"getpwuid": {},
|
||||||
"gmtime_r": {},
|
"getpwuid_r": {},
|
||||||
"h_errno": {},
|
"getresgid": {},
|
||||||
"htonl": {},
|
"getresuid": {},
|
||||||
"htons": {},
|
"getrlimit": {},
|
||||||
"hypot": {},
|
"getrlimit64": {},
|
||||||
"inet_ntoa": {},
|
"getrusage": {},
|
||||||
"inet_ntop": {},
|
"getservbyname": {},
|
||||||
"inet_pton": {},
|
"getsockname": {},
|
||||||
"initstate_r": {},
|
"getsockopt": {},
|
||||||
"ioctl": {},
|
"gettimeofday": {},
|
||||||
"isalnum": {},
|
"getuid": {},
|
||||||
"isalpha": {},
|
"gmtime_r": {},
|
||||||
"isatty": {},
|
"h_errno": {},
|
||||||
"isdigit": {},
|
"htonl": {},
|
||||||
"islower": {},
|
"htons": {},
|
||||||
"isnan": {},
|
"hypot": {},
|
||||||
"isnanf": {},
|
"inet_ntoa": {},
|
||||||
"isnanl": {},
|
"inet_ntop": {},
|
||||||
"isprint": {},
|
"inet_pton": {},
|
||||||
"isupper": {},
|
"initstate_r": {},
|
||||||
"isxdigit": {},
|
"ioctl": {},
|
||||||
"kill": {},
|
"isalnum": {},
|
||||||
"ldexp": {},
|
"isalpha": {},
|
||||||
"link": {},
|
"isatty": {},
|
||||||
"listen": {},
|
"isdigit": {},
|
||||||
"localtime": {},
|
"islower": {},
|
||||||
"localtime_r": {},
|
"isnan": {},
|
||||||
"log": {},
|
"isnanf": {},
|
||||||
"log10": {},
|
"isnanl": {},
|
||||||
"lrand48": {},
|
"isprint": {},
|
||||||
"lseek": {},
|
"isupper": {},
|
||||||
"lseek64": {},
|
"isxdigit": {},
|
||||||
"lstat": {},
|
"kill": {},
|
||||||
"lstat64": {},
|
"ldexp": {},
|
||||||
"malloc": {},
|
"link": {},
|
||||||
"mblen": {},
|
"listen": {},
|
||||||
"mbstowcs": {},
|
"localtime": {},
|
||||||
"mbtowc": {},
|
"localtime_r": {},
|
||||||
"memchr": {},
|
"log": {},
|
||||||
"memcmp": {},
|
"log10": {},
|
||||||
"memcpy": {},
|
"lrand48": {},
|
||||||
"memmove": {},
|
"lseek": {},
|
||||||
"memset": {},
|
"lseek64": {},
|
||||||
"mkdir": {},
|
"lstat": {},
|
||||||
"mkfifo": {},
|
"lstat64": {},
|
||||||
"mknod": {},
|
"malloc": {},
|
||||||
"mkstemp": {},
|
"mblen": {},
|
||||||
"mkstemp64": {},
|
"mbrtowc": {},
|
||||||
"mkstemps": {},
|
"mbsinit": {},
|
||||||
"mkstemps64": {},
|
"mbstowcs": {},
|
||||||
"mktime": {},
|
"mbtowc": {},
|
||||||
"mmap": {},
|
"memchr": {},
|
||||||
"mmap64": {},
|
"memcmp": {},
|
||||||
"modf": {},
|
"memcpy": {},
|
||||||
"mremap": {},
|
"memmove": {},
|
||||||
"munmap": {},
|
"memset": {},
|
||||||
"nanf": {},
|
"mkdir": {},
|
||||||
"nl_langinfo": {},
|
"mkfifo": {},
|
||||||
"ntohs": {},
|
"mknod": {},
|
||||||
"obstack_free": {},
|
"mkstemp": {},
|
||||||
"obstack_vprintf": {},
|
"mkstemp64": {},
|
||||||
"open": {},
|
"mkstemps": {},
|
||||||
"open64": {},
|
"mkstemps64": {},
|
||||||
"opendir": {},
|
"mktime": {},
|
||||||
"openpty": {},
|
"mmap": {},
|
||||||
"pathconf": {},
|
"mmap64": {},
|
||||||
"pause": {},
|
"modf": {},
|
||||||
"pclose": {},
|
"mremap": {},
|
||||||
"perror": {},
|
"munmap": {},
|
||||||
"pipe": {},
|
"nanf": {},
|
||||||
"poll": {},
|
"nl_langinfo": {},
|
||||||
"popen": {},
|
"ntohs": {},
|
||||||
"posix_fadvise": {},
|
"obstack_free": {},
|
||||||
"pow": {},
|
"obstack_vprintf": {},
|
||||||
"printf": {},
|
"open": {},
|
||||||
"pselect": {},
|
"open64": {},
|
||||||
"putc": {},
|
"opendir": {},
|
||||||
"putchar": {},
|
"openpty": {},
|
||||||
"puts": {},
|
"pathconf": {},
|
||||||
"qsort": {},
|
"pause": {},
|
||||||
"raise": {},
|
"pclose": {},
|
||||||
"rand": {},
|
"perror": {},
|
||||||
"rand_r": {},
|
"pipe": {},
|
||||||
"random": {},
|
"poll": {},
|
||||||
"random_r": {},
|
"popen": {},
|
||||||
"read": {},
|
"posix_fadvise": {},
|
||||||
"readdir": {},
|
"pow": {},
|
||||||
"readdir64": {},
|
"printf": {},
|
||||||
"readlink": {},
|
"pselect": {},
|
||||||
"readv": {},
|
"pthread_attr_getdetachstate": {},
|
||||||
"realloc": {},
|
"pthread_attr_setdetachstate": {},
|
||||||
"realpath": {},
|
"pthread_mutexattr_destroy": {},
|
||||||
"recv": {},
|
"pthread_mutexattr_init": {},
|
||||||
"recvfrom": {},
|
"pthread_mutexattr_settype": {},
|
||||||
"recvmsg": {},
|
"putc": {},
|
||||||
"remove": {},
|
"putchar": {},
|
||||||
"rename": {},
|
"puts": {},
|
||||||
"rewind": {},
|
"qsort": {},
|
||||||
"rmdir": {},
|
"raise": {},
|
||||||
"round": {},
|
"rand": {},
|
||||||
"scalbn": {},
|
"rand_r": {},
|
||||||
"scalbnl": {},
|
"random": {},
|
||||||
"select": {},
|
"random_r": {},
|
||||||
"send": {},
|
"read": {},
|
||||||
"sendmsg": {},
|
"readdir": {},
|
||||||
"sendto": {},
|
"readdir64": {},
|
||||||
"setbuf": {},
|
"readlink": {},
|
||||||
"setenv": {},
|
"readv": {},
|
||||||
"setlocale": {},
|
"realloc": {},
|
||||||
"setrlimit": {},
|
"realpath": {},
|
||||||
"setrlimit64": {},
|
"recv": {},
|
||||||
"setsid": {},
|
"recvfrom": {},
|
||||||
"setsockopt": {},
|
"recvmsg": {},
|
||||||
"setvbuf": {},
|
"remove": {},
|
||||||
"shmat": {},
|
"rename": {},
|
||||||
"shmctl": {},
|
"rewind": {},
|
||||||
"shmdt": {},
|
"rmdir": {},
|
||||||
"shutdown": {},
|
"round": {},
|
||||||
"sigaction": {},
|
"scalbn": {},
|
||||||
"signal": {},
|
"scalbnl": {},
|
||||||
"sin": {},
|
"sched_yield": {},
|
||||||
"sinf": {},
|
"select": {},
|
||||||
"sinh": {},
|
"send": {},
|
||||||
"sleep": {},
|
"sendmsg": {},
|
||||||
"snprintf": {},
|
"sendto": {},
|
||||||
"socket": {},
|
"setbuf": {},
|
||||||
"sprintf": {},
|
"setenv": {},
|
||||||
"sqrt": {},
|
"setlocale": {},
|
||||||
"srand48": {},
|
"setrlimit": {},
|
||||||
"sscanf": {},
|
"setrlimit64": {},
|
||||||
"stat": {},
|
"setsid": {},
|
||||||
"stat64": {},
|
"setsockopt": {},
|
||||||
"stderr": {},
|
"setvbuf": {},
|
||||||
"stdin": {},
|
"shmat": {},
|
||||||
"stdout": {},
|
"shmctl": {},
|
||||||
"strcasecmp": {},
|
"shmdt": {},
|
||||||
"strcat": {},
|
"shutdown": {},
|
||||||
"strchr": {},
|
"sigaction": {},
|
||||||
"strcmp": {},
|
"signal": {},
|
||||||
"strcpy": {},
|
"sin": {},
|
||||||
"strcspn": {},
|
"sinf": {},
|
||||||
"strdup": {},
|
"sinh": {},
|
||||||
"strerror": {},
|
"sleep": {},
|
||||||
"strlcat": {},
|
"snprintf": {},
|
||||||
"strlcpy": {},
|
"socket": {},
|
||||||
"strlen": {},
|
"sprintf": {},
|
||||||
"strncasecmp": {},
|
"sqrt": {},
|
||||||
"strncat": {},
|
"srand48": {},
|
||||||
"strncmp": {},
|
"sscanf": {},
|
||||||
"strncpy": {},
|
"stat": {},
|
||||||
"strnlen": {},
|
"stat64": {},
|
||||||
"strpbrk": {},
|
"stderr": {},
|
||||||
"strrchr": {},
|
"stdin": {},
|
||||||
"strspn": {},
|
"stdout": {},
|
||||||
"strstr": {},
|
"strcasecmp": {},
|
||||||
"strtod": {},
|
"strcat": {},
|
||||||
"strtof": {},
|
"strchr": {},
|
||||||
"strtoimax": {},
|
"strcmp": {},
|
||||||
"strtok": {},
|
"strcpy": {},
|
||||||
"strtol": {},
|
"strcspn": {},
|
||||||
"strtold": {},
|
"strdup": {},
|
||||||
"strtoll": {},
|
"strerror": {},
|
||||||
"strtoul": {},
|
"strlcat": {},
|
||||||
"strtoull": {},
|
"strlcpy": {},
|
||||||
"strtoumax": {},
|
"strlen": {},
|
||||||
"symlink": {},
|
"strncasecmp": {},
|
||||||
"sysconf": {},
|
"strncat": {},
|
||||||
"system": {},
|
"strncmp": {},
|
||||||
"tan": {},
|
"strncpy": {},
|
||||||
"tanh": {},
|
"strnlen": {},
|
||||||
"tcgetattr": {},
|
"strpbrk": {},
|
||||||
"tcsendbreak": {},
|
"strrchr": {},
|
||||||
"tcsetattr": {},
|
"strspn": {},
|
||||||
"time": {},
|
"strstr": {},
|
||||||
"tolower": {},
|
"strtod": {},
|
||||||
"toupper": {},
|
"strtof": {},
|
||||||
"trunc": {},
|
"strtoimax": {},
|
||||||
"tzset": {},
|
"strtok": {},
|
||||||
"umask": {},
|
"strtol": {},
|
||||||
"uname": {},
|
"strtold": {},
|
||||||
"ungetc": {},
|
"strtoll": {},
|
||||||
"unlink": {},
|
"strtoul": {},
|
||||||
"unsetenv": {},
|
"strtoull": {},
|
||||||
"usleep": {},
|
"strtoumax": {},
|
||||||
"utime": {},
|
"symlink": {},
|
||||||
"utimes": {},
|
"sysconf": {},
|
||||||
"vasprintf": {},
|
"system": {},
|
||||||
"vfprintf": {},
|
"tan": {},
|
||||||
"vprintf": {},
|
"tanh": {},
|
||||||
"vsnprintf": {},
|
"tcgetattr": {},
|
||||||
"vsprintf": {},
|
"tcsendbreak": {},
|
||||||
"waitpid": {},
|
"tcsetattr": {},
|
||||||
"wcschr": {},
|
"time": {},
|
||||||
"wctomb": {},
|
"tolower": {},
|
||||||
"wcwidth": {},
|
"toupper": {},
|
||||||
"write": {},
|
"trunc": {},
|
||||||
"writev": {},
|
"tzset": {},
|
||||||
"zero_struct_address": {},
|
"umask": {},
|
||||||
|
"uname": {},
|
||||||
|
"ungetc": {},
|
||||||
|
"unlink": {},
|
||||||
|
"unsetenv": {},
|
||||||
|
"usleep": {},
|
||||||
|
"utime": {},
|
||||||
|
"utimes": {},
|
||||||
|
"vasprintf": {},
|
||||||
|
"vfprintf": {},
|
||||||
|
"vfscanf": {},
|
||||||
|
"vprintf": {},
|
||||||
|
"vsnprintf": {},
|
||||||
|
"vsprintf": {},
|
||||||
|
"vsscanf": {},
|
||||||
|
"waitpid": {},
|
||||||
|
"wcschr": {},
|
||||||
|
"wctomb": {},
|
||||||
|
"wcwidth": {},
|
||||||
|
"write": {},
|
||||||
|
"writev": {},
|
||||||
|
"zero_struct_address": {},
|
||||||
}
|
}
|
||||||
|
|
|
@ -310,36 +310,11 @@ var CAPI = map[string]struct{}{
|
||||||
"pow": {},
|
"pow": {},
|
||||||
"printf": {},
|
"printf": {},
|
||||||
"pselect": {},
|
"pselect": {},
|
||||||
"pthread_attr_destroy": {},
|
|
||||||
"pthread_attr_getdetachstate": {},
|
"pthread_attr_getdetachstate": {},
|
||||||
"pthread_attr_init": {},
|
|
||||||
"pthread_attr_setdetachstate": {},
|
"pthread_attr_setdetachstate": {},
|
||||||
"pthread_attr_setscope": {},
|
|
||||||
"pthread_attr_setstacksize": {},
|
|
||||||
"pthread_cond_broadcast": {},
|
|
||||||
"pthread_cond_destroy": {},
|
|
||||||
"pthread_cond_init": {},
|
|
||||||
"pthread_cond_signal": {},
|
|
||||||
"pthread_cond_timedwait": {},
|
|
||||||
"pthread_cond_wait": {},
|
|
||||||
"pthread_create": {},
|
|
||||||
"pthread_detach": {},
|
|
||||||
"pthread_equal": {},
|
|
||||||
"pthread_exit": {},
|
|
||||||
"pthread_getspecific": {},
|
|
||||||
"pthread_join": {},
|
|
||||||
"pthread_key_create": {},
|
|
||||||
"pthread_key_delete": {},
|
|
||||||
"pthread_mutex_destroy": {},
|
|
||||||
"pthread_mutex_init": {},
|
|
||||||
"pthread_mutex_lock": {},
|
|
||||||
"pthread_mutex_trylock": {},
|
|
||||||
"pthread_mutex_unlock": {},
|
|
||||||
"pthread_mutexattr_destroy": {},
|
"pthread_mutexattr_destroy": {},
|
||||||
"pthread_mutexattr_init": {},
|
"pthread_mutexattr_init": {},
|
||||||
"pthread_mutexattr_settype": {},
|
"pthread_mutexattr_settype": {},
|
||||||
"pthread_self": {},
|
|
||||||
"pthread_setspecific": {},
|
|
||||||
"putc": {},
|
"putc": {},
|
||||||
"putchar": {},
|
"putchar": {},
|
||||||
"puts": {},
|
"puts": {},
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build libc.dmesg
|
||||||
// +build libc.dmesg
|
// +build libc.dmesg
|
||||||
|
|
||||||
package libc // import "modernc.org/libc"
|
package libc // import "modernc.org/libc"
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
// Code generated by 'ccgo errno/gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o errno/errno_freebsd_amd64.go -pkgname errno', DO NOT EDIT.
|
||||||
|
|
||||||
|
package errno
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{}
|
|
@ -0,0 +1,166 @@
|
||||||
|
// Code generated by 'ccgo errno/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o errno/errno_freebsd_amd64.go -pkgname errno', DO NOT EDIT.
|
||||||
|
|
||||||
|
package errno
|
||||||
|
|
||||||
|
import (
|
||||||
|
"math"
|
||||||
|
"reflect"
|
||||||
|
"sync/atomic"
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ = math.Pi
|
||||||
|
var _ reflect.Kind
|
||||||
|
var _ atomic.Value
|
||||||
|
var _ unsafe.Pointer
|
||||||
|
|
||||||
|
const (
|
||||||
|
E2BIG = 7
|
||||||
|
EACCES = 13
|
||||||
|
EADDRINUSE = 48
|
||||||
|
EADDRNOTAVAIL = 49
|
||||||
|
EAFNOSUPPORT = 47
|
||||||
|
EAGAIN = 35
|
||||||
|
EALREADY = 37
|
||||||
|
EAUTH = 80
|
||||||
|
EBADF = 9
|
||||||
|
EBADMSG = 89
|
||||||
|
EBADRPC = 72
|
||||||
|
EBUSY = 16
|
||||||
|
ECANCELED = 85
|
||||||
|
ECAPMODE = 94
|
||||||
|
ECHILD = 10
|
||||||
|
ECONNABORTED = 53
|
||||||
|
ECONNREFUSED = 61
|
||||||
|
ECONNRESET = 54
|
||||||
|
EDEADLK = 11
|
||||||
|
EDESTADDRREQ = 39
|
||||||
|
EDOM = 33
|
||||||
|
EDOOFUS = 88
|
||||||
|
EDQUOT = 69
|
||||||
|
EEXIST = 17
|
||||||
|
EFAULT = 14
|
||||||
|
EFBIG = 27
|
||||||
|
EFTYPE = 79
|
||||||
|
EHOSTDOWN = 64
|
||||||
|
EHOSTUNREACH = 65
|
||||||
|
EIDRM = 82
|
||||||
|
EILSEQ = 86
|
||||||
|
EINPROGRESS = 36
|
||||||
|
EINTEGRITY = 97
|
||||||
|
EINTR = 4
|
||||||
|
EINVAL = 22
|
||||||
|
EIO = 5
|
||||||
|
EISCONN = 56
|
||||||
|
EISDIR = 21
|
||||||
|
ELAST = 97
|
||||||
|
ELOOP = 62
|
||||||
|
EMFILE = 24
|
||||||
|
EMLINK = 31
|
||||||
|
EMSGSIZE = 40
|
||||||
|
EMULTIHOP = 90
|
||||||
|
ENAMETOOLONG = 63
|
||||||
|
ENEEDAUTH = 81
|
||||||
|
ENETDOWN = 50
|
||||||
|
ENETRESET = 52
|
||||||
|
ENETUNREACH = 51
|
||||||
|
ENFILE = 23
|
||||||
|
ENOATTR = 87
|
||||||
|
ENOBUFS = 55
|
||||||
|
ENODEV = 19
|
||||||
|
ENOENT = 2
|
||||||
|
ENOEXEC = 8
|
||||||
|
ENOLCK = 77
|
||||||
|
ENOLINK = 91
|
||||||
|
ENOMEM = 12
|
||||||
|
ENOMSG = 83
|
||||||
|
ENOPROTOOPT = 42
|
||||||
|
ENOSPC = 28
|
||||||
|
ENOSYS = 78
|
||||||
|
ENOTBLK = 15
|
||||||
|
ENOTCAPABLE = 93
|
||||||
|
ENOTCONN = 57
|
||||||
|
ENOTDIR = 20
|
||||||
|
ENOTEMPTY = 66
|
||||||
|
ENOTRECOVERABLE = 95
|
||||||
|
ENOTSOCK = 38
|
||||||
|
ENOTSUP = 45
|
||||||
|
ENOTTY = 25
|
||||||
|
ENXIO = 6
|
||||||
|
EOPNOTSUPP = 45
|
||||||
|
EOVERFLOW = 84
|
||||||
|
EOWNERDEAD = 96
|
||||||
|
EPERM = 1
|
||||||
|
EPFNOSUPPORT = 46
|
||||||
|
EPIPE = 32
|
||||||
|
EPROCLIM = 67
|
||||||
|
EPROCUNAVAIL = 76
|
||||||
|
EPROGMISMATCH = 75
|
||||||
|
EPROGUNAVAIL = 74
|
||||||
|
EPROTO = 92
|
||||||
|
EPROTONOSUPPORT = 43
|
||||||
|
EPROTOTYPE = 41
|
||||||
|
ERANGE = 34
|
||||||
|
EREMOTE = 71
|
||||||
|
EROFS = 30
|
||||||
|
ERPCMISMATCH = 73
|
||||||
|
ESHUTDOWN = 58
|
||||||
|
ESOCKTNOSUPPORT = 44
|
||||||
|
ESPIPE = 29
|
||||||
|
ESRCH = 3
|
||||||
|
ESTALE = 70
|
||||||
|
ETIMEDOUT = 60
|
||||||
|
ETOOMANYREFS = 59
|
||||||
|
ETXTBSY = 26
|
||||||
|
EUSERS = 68
|
||||||
|
EWOULDBLOCK = 35
|
||||||
|
EXDEV = 18
|
||||||
|
X_ERRNO_T_DEFINED = 0
|
||||||
|
X_FILE_OFFSET_BITS = 64
|
||||||
|
X_LP64 = 1
|
||||||
|
X_Nonnull = 0
|
||||||
|
X_Null_unspecified = 0
|
||||||
|
X_Nullable = 0
|
||||||
|
X_SYS_CDEFS_H_ = 0
|
||||||
|
X_SYS_ERRNO_H_ = 0
|
||||||
|
Unix = 1
|
||||||
|
)
|
||||||
|
|
||||||
|
type Ptrdiff_t = int64 /* <builtin>:3:26 */
|
||||||
|
|
||||||
|
type Size_t = uint64 /* <builtin>:9:23 */
|
||||||
|
|
||||||
|
type Wchar_t = int32 /* <builtin>:15:24 */
|
||||||
|
|
||||||
|
type X__int128_t = struct {
|
||||||
|
Flo int64
|
||||||
|
Fhi int64
|
||||||
|
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
|
||||||
|
type X__uint128_t = struct {
|
||||||
|
Flo uint64
|
||||||
|
Fhi uint64
|
||||||
|
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
|
||||||
|
|
||||||
|
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
|
||||||
|
type X__float128 = float64 /* <builtin>:47:21 */
|
||||||
|
|
||||||
|
// 11 was EAGAIN
|
||||||
|
|
||||||
|
// math software
|
||||||
|
|
||||||
|
// non-blocking and interrupt i/o
|
||||||
|
|
||||||
|
// ipc/network software -- argument errors
|
||||||
|
|
||||||
|
// ipc/network software -- operational errors
|
||||||
|
|
||||||
|
// should be rearranged
|
||||||
|
|
||||||
|
// quotas & mush
|
||||||
|
|
||||||
|
// Network File System
|
||||||
|
|
||||||
|
// ISO/IEC 9899:2011 K.3.2.2
|
||||||
|
type Errno_t = int32 /* errno.h:204:13 */
|
||||||
|
|
||||||
|
var _ int8 /* gen.c:2:13: */
|
|
@ -0,0 +1,5 @@
|
||||||
|
// Code generated by 'ccgo fcntl/gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o fcntl/fcntl_freebsd_amd64.go -pkgname fcntl', DO NOT EDIT.
|
||||||
|
|
||||||
|
package fcntl
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{}
|
|
@ -0,0 +1,770 @@
|
||||||
|
// Code generated by 'ccgo fcntl/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o fcntl/fcntl_freebsd_amd64.go -pkgname fcntl', DO NOT EDIT.
|
||||||
|
|
||||||
|
package fcntl
|
||||||
|
|
||||||
|
import (
|
||||||
|
"math"
|
||||||
|
"reflect"
|
||||||
|
"sync/atomic"
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ = math.Pi
|
||||||
|
var _ reflect.Kind
|
||||||
|
var _ atomic.Value
|
||||||
|
var _ unsafe.Pointer
|
||||||
|
|
||||||
|
const (
|
||||||
|
AT_EACCESS = 0x0100
|
||||||
|
AT_FDCWD = -100
|
||||||
|
AT_REMOVEDIR = 0x0800
|
||||||
|
AT_RESOLVE_BENEATH = 0x2000
|
||||||
|
AT_SYMLINK_FOLLOW = 0x0400
|
||||||
|
AT_SYMLINK_NOFOLLOW = 0x0200
|
||||||
|
FAPPEND = 8
|
||||||
|
FASYNC = 64
|
||||||
|
FDSYNC = 16777216
|
||||||
|
FD_CLOEXEC = 1
|
||||||
|
FD_NONE = -200
|
||||||
|
FFSYNC = 128
|
||||||
|
FNDELAY = 4
|
||||||
|
FNONBLOCK = 4
|
||||||
|
FRDAHEAD = 512
|
||||||
|
FREAD = 0x0001
|
||||||
|
FWRITE = 0x0002
|
||||||
|
F_ADD_SEALS = 19
|
||||||
|
F_CANCEL = 5
|
||||||
|
F_DUP2FD = 10
|
||||||
|
F_DUP2FD_CLOEXEC = 18
|
||||||
|
F_DUPFD = 0
|
||||||
|
F_DUPFD_CLOEXEC = 17
|
||||||
|
F_GETFD = 1
|
||||||
|
F_GETFL = 3
|
||||||
|
F_GETLK = 11
|
||||||
|
F_GETOWN = 5
|
||||||
|
F_GET_SEALS = 20
|
||||||
|
F_ISUNIONSTACK = 21
|
||||||
|
F_OGETLK = 7
|
||||||
|
F_OSETLK = 8
|
||||||
|
F_OSETLKW = 9
|
||||||
|
F_RDAHEAD = 16
|
||||||
|
F_RDLCK = 1
|
||||||
|
F_READAHEAD = 15
|
||||||
|
F_SEAL_GROW = 0x0004
|
||||||
|
F_SEAL_SEAL = 0x0001
|
||||||
|
F_SEAL_SHRINK = 0x0002
|
||||||
|
F_SEAL_WRITE = 0x0008
|
||||||
|
F_SETFD = 2
|
||||||
|
F_SETFL = 4
|
||||||
|
F_SETLK = 12
|
||||||
|
F_SETLKW = 13
|
||||||
|
F_SETLK_REMOTE = 14
|
||||||
|
F_SETOWN = 6
|
||||||
|
F_UNLCK = 2
|
||||||
|
F_UNLCKSYS = 4
|
||||||
|
F_WRLCK = 3
|
||||||
|
LOCK_EX = 0x02
|
||||||
|
LOCK_NB = 0x04
|
||||||
|
LOCK_SH = 0x01
|
||||||
|
LOCK_UN = 0x08
|
||||||
|
O_ACCMODE = 0x0003
|
||||||
|
O_APPEND = 0x0008
|
||||||
|
O_ASYNC = 0x0040
|
||||||
|
O_CLOEXEC = 0x00100000
|
||||||
|
O_CREAT = 0x0200
|
||||||
|
O_DIRECT = 0x00010000
|
||||||
|
O_DIRECTORY = 0x00020000
|
||||||
|
O_DSYNC = 0x01000000
|
||||||
|
O_EXCL = 0x0800
|
||||||
|
O_EXEC = 0x00040000
|
||||||
|
O_EXLOCK = 0x0020
|
||||||
|
O_FSYNC = 0x0080
|
||||||
|
O_NDELAY = 4
|
||||||
|
O_NOCTTY = 0x8000
|
||||||
|
O_NOFOLLOW = 0x0100
|
||||||
|
O_NONBLOCK = 0x0004
|
||||||
|
O_RDONLY = 0x0000
|
||||||
|
O_RDWR = 0x0002
|
||||||
|
O_RESOLVE_BENEATH = 0x00800000
|
||||||
|
O_SEARCH = 262144
|
||||||
|
O_SHLOCK = 0x0010
|
||||||
|
O_SYNC = 0x0080
|
||||||
|
O_TRUNC = 0x0400
|
||||||
|
O_TTY_INIT = 0x00080000
|
||||||
|
O_VERIFY = 0x00200000
|
||||||
|
O_WRONLY = 0x0001
|
||||||
|
POSIX_FADV_DONTNEED = 4
|
||||||
|
POSIX_FADV_NOREUSE = 5
|
||||||
|
POSIX_FADV_NORMAL = 0
|
||||||
|
POSIX_FADV_RANDOM = 1
|
||||||
|
POSIX_FADV_SEQUENTIAL = 2
|
||||||
|
POSIX_FADV_WILLNEED = 3
|
||||||
|
X_FILE_OFFSET_BITS = 64
|
||||||
|
X_LP64 = 1
|
||||||
|
X_MACHINE__LIMITS_H_ = 0
|
||||||
|
X_MACHINE__TYPES_H_ = 0
|
||||||
|
X_MODE_T_DECLARED = 0
|
||||||
|
X_Nonnull = 0
|
||||||
|
X_Null_unspecified = 0
|
||||||
|
X_Nullable = 0
|
||||||
|
X_OFF_T_DECLARED = 0
|
||||||
|
X_PID_T_DECLARED = 0
|
||||||
|
X_SYS_CDEFS_H_ = 0
|
||||||
|
X_SYS_FCNTL_H_ = 0
|
||||||
|
X_SYS__TYPES_H_ = 0
|
||||||
|
Unix = 1
|
||||||
|
)
|
||||||
|
|
||||||
|
type Ptrdiff_t = int64 /* <builtin>:3:26 */
|
||||||
|
|
||||||
|
type Size_t = uint64 /* <builtin>:9:23 */
|
||||||
|
|
||||||
|
type Wchar_t = int32 /* <builtin>:15:24 */
|
||||||
|
|
||||||
|
type X__int128_t = struct {
|
||||||
|
Flo int64
|
||||||
|
Fhi int64
|
||||||
|
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
|
||||||
|
type X__uint128_t = struct {
|
||||||
|
Flo uint64
|
||||||
|
Fhi uint64
|
||||||
|
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
|
||||||
|
|
||||||
|
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
|
||||||
|
type X__float128 = float64 /* <builtin>:47:21 */
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1983, 1990, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
// (c) UNIX System Laboratories, Inc.
|
||||||
|
// All or some portions of this file are derived from material licensed
|
||||||
|
// to the University of California by American Telephone and Telegraph
|
||||||
|
// Co. or Unix System Laboratories, Inc. and are reproduced herein with
|
||||||
|
// the permission of UNIX System Laboratories, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)fcntl.h 8.3 (Berkeley) 1/21/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// This file includes the definitions for open and fcntl
|
||||||
|
// described by POSIX for <fcntl.h>; it also includes
|
||||||
|
// related kernel definitions.
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// Testing against Clang-specific extensions.
|
||||||
|
|
||||||
|
// This code has been put in place to help reduce the addition of
|
||||||
|
// compiler specific defines in FreeBSD code. It helps to aid in
|
||||||
|
// having a compiler-agnostic source tree.
|
||||||
|
|
||||||
|
// Compiler memory barriers, specific to gcc and clang.
|
||||||
|
|
||||||
|
// XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
|
||||||
|
|
||||||
|
// Macro to test if we're using a specific version of gcc or later.
|
||||||
|
|
||||||
|
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
|
||||||
|
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
|
||||||
|
// The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
|
||||||
|
// mode -- there must be no spaces between its arguments, and for nested
|
||||||
|
// __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also
|
||||||
|
// concatenate double-quoted strings produced by the __STRING macro, but
|
||||||
|
// this only works with ANSI C.
|
||||||
|
//
|
||||||
|
// __XSTRING is like __STRING, but it expands any macros in its argument
|
||||||
|
// first. It is only available with ANSI C.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to help declare dead (non-returning) and
|
||||||
|
// pure (no side effects) functions, and unused variables. They are
|
||||||
|
// null except for versions of gcc that are known to support the features
|
||||||
|
// properly (old versions of gcc-2 supported the dead and pure features
|
||||||
|
// in a different (wrong) way). If we do not provide an implementation
|
||||||
|
// for a given compiler, let the compile fail if it is told to use
|
||||||
|
// a feature that we cannot live without.
|
||||||
|
|
||||||
|
// Keywords added in C11.
|
||||||
|
|
||||||
|
// Emulation of C11 _Generic(). Unlike the previously defined C11
|
||||||
|
// keywords, it is not possible to implement this using exactly the same
|
||||||
|
// syntax. Therefore implement something similar under the name
|
||||||
|
// __generic(). Unlike _Generic(), this macro can only distinguish
|
||||||
|
// between a single type, so it requires nested invocations to
|
||||||
|
// distinguish multiple cases.
|
||||||
|
|
||||||
|
// C99 Static array indices in function parameter declarations. Syntax such as:
|
||||||
|
// void bar(int myArray[static 10]);
|
||||||
|
// is allowed in C99 but not in C++. Define __min_size appropriately so
|
||||||
|
// headers using it can be compiled in either language. Use like this:
|
||||||
|
// void bar(int myArray[__min_size(10)]);
|
||||||
|
|
||||||
|
// XXX: should use `#if __STDC_VERSION__ < 199901'.
|
||||||
|
|
||||||
|
// C++11 exposes a load of C99 stuff
|
||||||
|
|
||||||
|
// GCC 2.95 provides `__restrict' as an extension to C90 to support the
|
||||||
|
// C99-specific `restrict' type qualifier. We happen to use `__restrict' as
|
||||||
|
// a way to define the `restrict' type qualifier without disturbing older
|
||||||
|
// software that is unaware of C99 keywords.
|
||||||
|
|
||||||
|
// GNU C version 2.96 adds explicit branch prediction so that
|
||||||
|
// the CPU back-end can hint the processor and also so that
|
||||||
|
// code blocks can be reordered such that the predicted path
|
||||||
|
// sees a more linear flow, thus improving cache behavior, etc.
|
||||||
|
//
|
||||||
|
// The following two macros provide us with a way to utilize this
|
||||||
|
// compiler feature. Use __predict_true() if you expect the expression
|
||||||
|
// to evaluate to true, and __predict_false() if you expect the
|
||||||
|
// expression to evaluate to false.
|
||||||
|
//
|
||||||
|
// A few notes about usage:
|
||||||
|
//
|
||||||
|
// * Generally, __predict_false() error condition checks (unless
|
||||||
|
// you have some _strong_ reason to do otherwise, in which case
|
||||||
|
// document it), and/or __predict_true() `no-error' condition
|
||||||
|
// checks, assuming you want to optimize for the no-error case.
|
||||||
|
//
|
||||||
|
// * Other than that, if you don't know the likelihood of a test
|
||||||
|
// succeeding from empirical or other `hard' evidence, don't
|
||||||
|
// make predictions.
|
||||||
|
//
|
||||||
|
// * These are meant to be used in places that are run `a lot'.
|
||||||
|
// It is wasteful to make predictions in code that is run
|
||||||
|
// seldomly (e.g. at subsystem initialization time) as the
|
||||||
|
// basic block reordering that this affects can often generate
|
||||||
|
// larger code.
|
||||||
|
|
||||||
|
// We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
|
||||||
|
// require it.
|
||||||
|
|
||||||
|
// Given the pointer x to the member m of the struct s, return
|
||||||
|
// a pointer to the containing structure. When using GCC, we first
|
||||||
|
// assign pointer x to a local variable, to check that its type is
|
||||||
|
// compatible with member m.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to declare that functions take printf-like
|
||||||
|
// or scanf-like arguments. They are null except for versions of gcc
|
||||||
|
// that are known to support the features properly (old versions of gcc-2
|
||||||
|
// didn't permit keeping the keywords out of the application namespace).
|
||||||
|
|
||||||
|
// Compiler-dependent macros that rely on FreeBSD-specific extensions.
|
||||||
|
|
||||||
|
// Embed the rcs id of a source file in the resulting library. Note that in
|
||||||
|
// more recent ELF binutils, we use .ident allowing the ID to be stripped.
|
||||||
|
// Usage:
|
||||||
|
// __FBSDID("$FreeBSD$");
|
||||||
|
|
||||||
|
// -
|
||||||
|
// The following definitions are an extension of the behavior originally
|
||||||
|
// implemented in <sys/_posix.h>, but with a different level of granularity.
|
||||||
|
// POSIX.1 requires that the macros we test be defined before any standard
|
||||||
|
// header file is included.
|
||||||
|
//
|
||||||
|
// Here's a quick run-down of the versions:
|
||||||
|
// defined(_POSIX_SOURCE) 1003.1-1988
|
||||||
|
// _POSIX_C_SOURCE == 1 1003.1-1990
|
||||||
|
// _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option
|
||||||
|
// _POSIX_C_SOURCE == 199309 1003.1b-1993
|
||||||
|
// _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995,
|
||||||
|
// and the omnibus ISO/IEC 9945-1: 1996
|
||||||
|
// _POSIX_C_SOURCE == 200112 1003.1-2001
|
||||||
|
// _POSIX_C_SOURCE == 200809 1003.1-2008
|
||||||
|
//
|
||||||
|
// In addition, the X/Open Portability Guide, which is now the Single UNIX
|
||||||
|
// Specification, defines a feature-test macro which indicates the version of
|
||||||
|
// that specification, and which subsumes _POSIX_C_SOURCE.
|
||||||
|
//
|
||||||
|
// Our macros begin with two underscores to avoid namespace screwage.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
|
||||||
|
|
||||||
|
// Deal with various X/Open Portability Guides and Single UNIX Spec.
|
||||||
|
|
||||||
|
// Deal with all versions of POSIX. The ordering relative to the tests above is
|
||||||
|
// important.
|
||||||
|
// -
|
||||||
|
// Deal with _ANSI_SOURCE:
|
||||||
|
// If it is defined, and no other compilation environment is explicitly
|
||||||
|
// requested, then define our internal feature-test macros to zero. This
|
||||||
|
// makes no difference to the preprocessor (undefined symbols in preprocessing
|
||||||
|
// expressions are defined to have value zero), but makes it more convenient for
|
||||||
|
// a test program to print out the values.
|
||||||
|
//
|
||||||
|
// If a program mistakenly defines _ANSI_SOURCE and some other macro such as
|
||||||
|
// _POSIX_C_SOURCE, we will assume that it wants the broader compilation
|
||||||
|
// environment (and in fact we will never get here).
|
||||||
|
|
||||||
|
// User override __EXT1_VISIBLE
|
||||||
|
|
||||||
|
// Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
|
||||||
|
// translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
|
||||||
|
|
||||||
|
// Nullability qualifiers: currently only supported by Clang.
|
||||||
|
|
||||||
|
// Type Safety Checking
|
||||||
|
//
|
||||||
|
// Clang provides additional attributes to enable checking type safety
|
||||||
|
// properties that cannot be enforced by the C type system.
|
||||||
|
|
||||||
|
// Lock annotations.
|
||||||
|
//
|
||||||
|
// Clang provides support for doing basic thread-safety tests at
|
||||||
|
// compile-time, by marking which locks will/should be held when
|
||||||
|
// entering/leaving a functions.
|
||||||
|
//
|
||||||
|
// Furthermore, it is also possible to annotate variables and structure
|
||||||
|
// members to enforce that they are only accessed when certain locks are
|
||||||
|
// held.
|
||||||
|
|
||||||
|
// Structure implements a lock.
|
||||||
|
|
||||||
|
// Function acquires an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function attempts to acquire an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function releases a lock.
|
||||||
|
|
||||||
|
// Function asserts that an exclusive or shared lock is held.
|
||||||
|
|
||||||
|
// Function requires that an exclusive or shared lock is or is not held.
|
||||||
|
|
||||||
|
// Function should not be analyzed.
|
||||||
|
|
||||||
|
// Function or variable should not be sanitized, i.e. by AddressSanitizer.
|
||||||
|
// GCC has the nosanitize attribute, but as a function attribute only, and
|
||||||
|
// warns on use as a variable attribute.
|
||||||
|
|
||||||
|
// Guard variables and structure members by lock.
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||||
|
//
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-4-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// Copyright (c) 1990, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. All advertising materials mentioning features or use of this software
|
||||||
|
// must display the following acknowledgement:
|
||||||
|
// This product includes software developed by the University of
|
||||||
|
// California, Berkeley and its contributors.
|
||||||
|
// 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// From: @(#)ansi.h 8.2 (Berkeley) 1/4/94
|
||||||
|
// From: @(#)types.h 8.3 (Berkeley) 1/5/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1988, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)limits.h 8.3 (Berkeley) 1/4/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// According to ANSI (section 2.2.4.2), the values below must be usable by
|
||||||
|
// #if preprocessing directives. Additionally, the expression must have the
|
||||||
|
// same type as would an expression that is an object of the corresponding
|
||||||
|
// type converted according to the integral promotions. The subtraction for
|
||||||
|
// INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
|
||||||
|
// unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
|
||||||
|
|
||||||
|
// max value for an unsigned long long
|
||||||
|
|
||||||
|
// Quads and longs are the same on the amd64. Ensure they stay in sync.
|
||||||
|
|
||||||
|
// Minimum signal stack size.
|
||||||
|
|
||||||
|
// Basic types upon which most other types are built.
|
||||||
|
type X__int8_t = int8 /* _types.h:55:22 */
|
||||||
|
type X__uint8_t = uint8 /* _types.h:56:24 */
|
||||||
|
type X__int16_t = int16 /* _types.h:57:17 */
|
||||||
|
type X__uint16_t = uint16 /* _types.h:58:25 */
|
||||||
|
type X__int32_t = int32 /* _types.h:59:15 */
|
||||||
|
type X__uint32_t = uint32 /* _types.h:60:23 */
|
||||||
|
type X__int64_t = int64 /* _types.h:62:16 */
|
||||||
|
type X__uint64_t = uint64 /* _types.h:63:24 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__clock_t = X__int32_t /* _types.h:75:19 */ // clock()...
|
||||||
|
type X__critical_t = X__int64_t /* _types.h:76:19 */
|
||||||
|
type X__double_t = float64 /* _types.h:78:17 */
|
||||||
|
type X__float_t = float32 /* _types.h:79:16 */
|
||||||
|
type X__intfptr_t = X__int64_t /* _types.h:81:19 */
|
||||||
|
type X__intptr_t = X__int64_t /* _types.h:82:19 */
|
||||||
|
type X__intmax_t = X__int64_t /* _types.h:93:19 */
|
||||||
|
type X__int_fast8_t = X__int32_t /* _types.h:94:19 */
|
||||||
|
type X__int_fast16_t = X__int32_t /* _types.h:95:19 */
|
||||||
|
type X__int_fast32_t = X__int32_t /* _types.h:96:19 */
|
||||||
|
type X__int_fast64_t = X__int64_t /* _types.h:97:19 */
|
||||||
|
type X__int_least8_t = X__int8_t /* _types.h:98:18 */
|
||||||
|
type X__int_least16_t = X__int16_t /* _types.h:99:19 */
|
||||||
|
type X__int_least32_t = X__int32_t /* _types.h:100:19 */
|
||||||
|
type X__int_least64_t = X__int64_t /* _types.h:101:19 */
|
||||||
|
type X__ptrdiff_t = X__int64_t /* _types.h:103:19 */ // ptr1 - ptr2
|
||||||
|
type X__register_t = X__int64_t /* _types.h:104:19 */
|
||||||
|
type X__segsz_t = X__int64_t /* _types.h:105:19 */ // segment size (in pages)
|
||||||
|
type X__size_t = X__uint64_t /* _types.h:106:20 */ // sizeof()
|
||||||
|
type X__ssize_t = X__int64_t /* _types.h:107:19 */ // byte count or error
|
||||||
|
type X__time_t = X__int64_t /* _types.h:108:19 */ // time()...
|
||||||
|
type X__uintfptr_t = X__uint64_t /* _types.h:109:20 */
|
||||||
|
type X__uintptr_t = X__uint64_t /* _types.h:110:20 */
|
||||||
|
type X__uintmax_t = X__uint64_t /* _types.h:121:20 */
|
||||||
|
type X__uint_fast8_t = X__uint32_t /* _types.h:122:20 */
|
||||||
|
type X__uint_fast16_t = X__uint32_t /* _types.h:123:20 */
|
||||||
|
type X__uint_fast32_t = X__uint32_t /* _types.h:124:20 */
|
||||||
|
type X__uint_fast64_t = X__uint64_t /* _types.h:125:20 */
|
||||||
|
type X__uint_least8_t = X__uint8_t /* _types.h:126:19 */
|
||||||
|
type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
|
||||||
|
type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
|
||||||
|
type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
|
||||||
|
type X__u_register_t = X__uint64_t /* _types.h:131:20 */
|
||||||
|
type X__vm_offset_t = X__uint64_t /* _types.h:132:20 */
|
||||||
|
type X__vm_paddr_t = X__uint64_t /* _types.h:133:20 */
|
||||||
|
type X__vm_size_t = X__uint64_t /* _types.h:134:20 */
|
||||||
|
type X___wchar_t = int32 /* _types.h:141:14 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__blksize_t = X__int32_t /* _types.h:40:19 */ // file block size
|
||||||
|
type X__blkcnt_t = X__int64_t /* _types.h:41:19 */ // file block count
|
||||||
|
type X__clockid_t = X__int32_t /* _types.h:42:19 */ // clock_gettime()...
|
||||||
|
type X__fflags_t = X__uint32_t /* _types.h:43:20 */ // file flags
|
||||||
|
type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
|
||||||
|
type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
|
||||||
|
type X__gid_t = X__uint32_t /* _types.h:46:20 */
|
||||||
|
type X__id_t = X__int64_t /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
|
||||||
|
type X__ino_t = X__uint64_t /* _types.h:48:20 */ // inode number
|
||||||
|
type X__key_t = int64 /* _types.h:49:15 */ // IPC key (for Sys V IPC)
|
||||||
|
type X__lwpid_t = X__int32_t /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
|
||||||
|
type X__mode_t = X__uint16_t /* _types.h:51:20 */ // permissions
|
||||||
|
type X__accmode_t = int32 /* _types.h:52:14 */ // access permissions
|
||||||
|
type X__nl_item = int32 /* _types.h:53:14 */
|
||||||
|
type X__nlink_t = X__uint64_t /* _types.h:54:20 */ // link count
|
||||||
|
type X__off_t = X__int64_t /* _types.h:55:19 */ // file offset
|
||||||
|
type X__off64_t = X__int64_t /* _types.h:56:19 */ // file offset (alias)
|
||||||
|
type X__pid_t = X__int32_t /* _types.h:57:19 */ // process [group]
|
||||||
|
type X__rlim_t = X__int64_t /* _types.h:58:19 */ // resource limit - intentionally
|
||||||
|
// signed, because of legacy code
|
||||||
|
// that uses -1 for RLIM_INFINITY
|
||||||
|
type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
|
||||||
|
type X__socklen_t = X__uint32_t /* _types.h:62:20 */
|
||||||
|
type X__suseconds_t = int64 /* _types.h:63:15 */ // microseconds (signed)
|
||||||
|
type X__timer_t = uintptr /* _types.h:64:24 */ // timer_gettime()...
|
||||||
|
type X__mqd_t = uintptr /* _types.h:65:21 */ // mq_open()...
|
||||||
|
type X__uid_t = X__uint32_t /* _types.h:66:20 */
|
||||||
|
type X__useconds_t = uint32 /* _types.h:67:22 */ // microseconds (unsigned)
|
||||||
|
type X__cpuwhich_t = int32 /* _types.h:68:14 */ // which parameter for cpuset.
|
||||||
|
type X__cpulevel_t = int32 /* _types.h:69:14 */ // level parameter for cpuset.
|
||||||
|
type X__cpusetid_t = int32 /* _types.h:70:14 */ // cpuset identifier.
|
||||||
|
type X__daddr_t = X__int64_t /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
|
||||||
|
|
||||||
|
// Unusual type definitions.
|
||||||
|
// rune_t is declared to be an ``int'' instead of the more natural
|
||||||
|
// ``unsigned long'' or ``long''. Two things are happening here. It is not
|
||||||
|
// unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
|
||||||
|
// it looks like 10646 will be a 31 bit standard. This means that if your
|
||||||
|
// ints cannot hold 32 bits, you will be in trouble. The reason an int was
|
||||||
|
// chosen over a long is that the is*() and to*() routines take ints (says
|
||||||
|
// ANSI C), but they use __ct_rune_t instead of int.
|
||||||
|
//
|
||||||
|
// NOTE: rune_t is not covered by ANSI nor other standards, and should not
|
||||||
|
// be instantiated outside of lib/libc/locale. Use wchar_t. wint_t and
|
||||||
|
// rune_t must be the same type. Also, wint_t should be able to hold all
|
||||||
|
// members of the largest character set plus one extra value (WEOF), and
|
||||||
|
// must be at least 16 bits.
|
||||||
|
type X__ct_rune_t = int32 /* _types.h:91:14 */ // arg type for ctype funcs
|
||||||
|
type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
|
||||||
|
type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
|
||||||
|
|
||||||
|
// Clang already provides these types as built-ins, but only in C++ mode.
|
||||||
|
type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
|
||||||
|
type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
|
||||||
|
// In C++11, char16_t and char32_t are built-in types.
|
||||||
|
|
||||||
|
type X__max_align_t = struct {
|
||||||
|
F__max_align1 int64
|
||||||
|
F__max_align2 float64
|
||||||
|
} /* _types.h:111:3 */
|
||||||
|
|
||||||
|
type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
|
||||||
|
|
||||||
|
type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
|
||||||
|
|
||||||
|
// mbstate_t is an opaque object to keep conversion state during multibyte
|
||||||
|
// stream conversions.
|
||||||
|
type X__mbstate_t = struct {
|
||||||
|
_ [0]uint64
|
||||||
|
F__mbstate8 [128]int8
|
||||||
|
} /* _types.h:124:3 */
|
||||||
|
|
||||||
|
type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
|
||||||
|
|
||||||
|
// Types for varargs. These are all provided by builtin types these
|
||||||
|
// days, so centralize their definition.
|
||||||
|
type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
|
||||||
|
type X__gnuc_va_list = X__va_list /* _types.h:140:20 */ // compatibility w/GNU headers
|
||||||
|
|
||||||
|
// When the following macro is defined, the system uses 64-bit inode numbers.
|
||||||
|
// Programs can use this to avoid including <sys/param.h>, with its associated
|
||||||
|
// namespace pollution.
|
||||||
|
|
||||||
|
type Mode_t = X__mode_t /* fcntl.h:53:18 */
|
||||||
|
|
||||||
|
type Off_t = X__off_t /* fcntl.h:58:18 */
|
||||||
|
|
||||||
|
type Pid_t = X__pid_t /* fcntl.h:63:18 */
|
||||||
|
|
||||||
|
// File status flags: these are used by open(2), fcntl(2).
|
||||||
|
// They are also used (indirectly) in the kernel file structure f_flags,
|
||||||
|
// which is a superset of the open/fcntl flags. Open flags and f_flags
|
||||||
|
// are inter-convertible using OFLAGS(fflags) and FFLAGS(oflags).
|
||||||
|
// Open/fcntl flags begin with O_; kernel-internal flags begin with F.
|
||||||
|
// open-only flags
|
||||||
|
|
||||||
|
// Kernel encoding of open mode; separate read and write bits that are
|
||||||
|
// independently testable: 1 greater than the above.
|
||||||
|
//
|
||||||
|
// XXX
|
||||||
|
// FREAD and FWRITE are excluded from the #ifdef _KERNEL so that TIOCFLUSH,
|
||||||
|
// which was documented to use FREAD/FWRITE, continues to work.
|
||||||
|
|
||||||
|
// Defined by POSIX 1003.1; BSD default, but must be distinct from O_RDONLY.
|
||||||
|
|
||||||
|
// Attempt to bypass buffer cache
|
||||||
|
|
||||||
|
// Defined by POSIX 1003.1-2008; BSD default, but reserve for future use.
|
||||||
|
|
||||||
|
/* #define O_UNUSED1 0x00400000 */ // Was O_BENEATH
|
||||||
|
|
||||||
|
// XXX missing O_RSYNC.
|
||||||
|
|
||||||
|
// The O_* flags used to have only F* names, which were used in the kernel
|
||||||
|
// and by fcntl. We retain the F* names for the kernel f_flag field
|
||||||
|
// and for backward compatibility for fcntl. These flags are deprecated.
|
||||||
|
|
||||||
|
// Historically, we ran out of bits in f_flag (which was once a short).
|
||||||
|
// However, the flag bits not set in FMASK are only meaningful in the
|
||||||
|
// initial open syscall. Those bits were thus given a
|
||||||
|
// different meaning for fcntl(2).
|
||||||
|
// Read ahead
|
||||||
|
|
||||||
|
// Magic value that specify the use of the current working directory
|
||||||
|
// to determine the target of relative file paths in the openat() and
|
||||||
|
// similar syscalls.
|
||||||
|
|
||||||
|
// Miscellaneous flags for the *at() syscalls.
|
||||||
|
/* #define AT_UNUSED1 0x1000 */ // Was AT_BENEATH
|
||||||
|
|
||||||
|
// Constants used for fcntl(2)
|
||||||
|
|
||||||
|
// command values
|
||||||
|
|
||||||
|
// Seals (F_ADD_SEALS, F_GET_SEALS).
|
||||||
|
|
||||||
|
// file descriptor flags (F_GETFD, F_SETFD)
|
||||||
|
|
||||||
|
// record locking flags (F_GETLK, F_SETLK, F_SETLKW)
|
||||||
|
|
||||||
|
// Advisory file segment locking data type -
|
||||||
|
// information passed to system by user
|
||||||
|
type Flock = struct {
|
||||||
|
Fl_start Off_t
|
||||||
|
Fl_len Off_t
|
||||||
|
Fl_pid Pid_t
|
||||||
|
Fl_type int16
|
||||||
|
Fl_whence int16
|
||||||
|
Fl_sysid int32
|
||||||
|
_ [4]byte
|
||||||
|
} /* fcntl.h:294:1 */
|
||||||
|
|
||||||
|
// Old advisory file segment locking data type,
|
||||||
|
// before adding l_sysid.
|
||||||
|
type X__oflock = struct {
|
||||||
|
Fl_start Off_t
|
||||||
|
Fl_len Off_t
|
||||||
|
Fl_pid Pid_t
|
||||||
|
Fl_type int16
|
||||||
|
Fl_whence int16
|
||||||
|
} /* fcntl.h:308:1 */
|
||||||
|
|
||||||
|
var _ int8 /* gen.c:2:13: */
|
|
@ -2,6 +2,7 @@
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build !libc.nofsync
|
||||||
// +build !libc.nofsync
|
// +build !libc.nofsync
|
||||||
|
|
||||||
package libc // import "modernc.org/libc"
|
package libc // import "modernc.org/libc"
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
// Code generated by 'ccgo fts/gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o fts/fts_freebsd_amd64.go -pkgname fts', DO NOT EDIT.
|
||||||
|
|
||||||
|
package fts
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{}
|
|
@ -0,0 +1,642 @@
|
||||||
|
// Code generated by 'ccgo fts/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o fts/fts_freebsd_amd64.go -pkgname fts', DO NOT EDIT.
|
||||||
|
|
||||||
|
package fts
|
||||||
|
|
||||||
|
import (
|
||||||
|
"math"
|
||||||
|
"reflect"
|
||||||
|
"sync/atomic"
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ = math.Pi
|
||||||
|
var _ reflect.Kind
|
||||||
|
var _ atomic.Value
|
||||||
|
var _ unsafe.Pointer
|
||||||
|
|
||||||
|
const (
|
||||||
|
FTS_AGAIN = 1
|
||||||
|
FTS_COMFOLLOW = 0x001
|
||||||
|
FTS_D = 1
|
||||||
|
FTS_DC = 2
|
||||||
|
FTS_DEFAULT = 3
|
||||||
|
FTS_DNR = 4
|
||||||
|
FTS_DONTCHDIR = 0x01
|
||||||
|
FTS_DOT = 5
|
||||||
|
FTS_DP = 6
|
||||||
|
FTS_ERR = 7
|
||||||
|
FTS_F = 8
|
||||||
|
FTS_FOLLOW = 2
|
||||||
|
FTS_INIT = 9
|
||||||
|
FTS_ISW = 0x04
|
||||||
|
FTS_LOGICAL = 0x002
|
||||||
|
FTS_NAMEONLY = 0x100
|
||||||
|
FTS_NOCHDIR = 0x004
|
||||||
|
FTS_NOINSTR = 3
|
||||||
|
FTS_NOSTAT = 0x008
|
||||||
|
FTS_NS = 10
|
||||||
|
FTS_NSOK = 11
|
||||||
|
FTS_OPTIONMASK = 0x0ff
|
||||||
|
FTS_PHYSICAL = 0x010
|
||||||
|
FTS_ROOTLEVEL = 0
|
||||||
|
FTS_ROOTPARENTLEVEL = -1
|
||||||
|
FTS_SEEDOT = 0x020
|
||||||
|
FTS_SKIP = 4
|
||||||
|
FTS_SL = 12
|
||||||
|
FTS_SLNONE = 13
|
||||||
|
FTS_STOP = 0x200
|
||||||
|
FTS_SYMFOLLOW = 0x02
|
||||||
|
FTS_W = 14
|
||||||
|
FTS_WHITEOUT = 0x080
|
||||||
|
FTS_XDEV = 0x040
|
||||||
|
X_FILE_OFFSET_BITS = 64
|
||||||
|
X_FTS_H_ = 0
|
||||||
|
X_LP64 = 1
|
||||||
|
X_MACHINE__LIMITS_H_ = 0
|
||||||
|
X_MACHINE__TYPES_H_ = 0
|
||||||
|
X_Nonnull = 0
|
||||||
|
X_Null_unspecified = 0
|
||||||
|
X_Nullable = 0
|
||||||
|
X_SYS_CDEFS_H_ = 0
|
||||||
|
X_SYS__TYPES_H_ = 0
|
||||||
|
Unix = 1
|
||||||
|
)
|
||||||
|
|
||||||
|
type Ptrdiff_t = int64 /* <builtin>:3:26 */
|
||||||
|
|
||||||
|
type Size_t = uint64 /* <builtin>:9:23 */
|
||||||
|
|
||||||
|
type Wchar_t = int32 /* <builtin>:15:24 */
|
||||||
|
|
||||||
|
type X__int128_t = struct {
|
||||||
|
Flo int64
|
||||||
|
Fhi int64
|
||||||
|
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
|
||||||
|
type X__uint128_t = struct {
|
||||||
|
Flo uint64
|
||||||
|
Fhi uint64
|
||||||
|
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
|
||||||
|
|
||||||
|
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
|
||||||
|
type X__float128 = float64 /* <builtin>:47:21 */
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1989, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)fts.h 8.3 (Berkeley) 8/14/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||||
|
//
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// Testing against Clang-specific extensions.
|
||||||
|
|
||||||
|
// This code has been put in place to help reduce the addition of
|
||||||
|
// compiler specific defines in FreeBSD code. It helps to aid in
|
||||||
|
// having a compiler-agnostic source tree.
|
||||||
|
|
||||||
|
// Compiler memory barriers, specific to gcc and clang.
|
||||||
|
|
||||||
|
// XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
|
||||||
|
|
||||||
|
// Macro to test if we're using a specific version of gcc or later.
|
||||||
|
|
||||||
|
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
|
||||||
|
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
|
||||||
|
// The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
|
||||||
|
// mode -- there must be no spaces between its arguments, and for nested
|
||||||
|
// __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also
|
||||||
|
// concatenate double-quoted strings produced by the __STRING macro, but
|
||||||
|
// this only works with ANSI C.
|
||||||
|
//
|
||||||
|
// __XSTRING is like __STRING, but it expands any macros in its argument
|
||||||
|
// first. It is only available with ANSI C.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to help declare dead (non-returning) and
|
||||||
|
// pure (no side effects) functions, and unused variables. They are
|
||||||
|
// null except for versions of gcc that are known to support the features
|
||||||
|
// properly (old versions of gcc-2 supported the dead and pure features
|
||||||
|
// in a different (wrong) way). If we do not provide an implementation
|
||||||
|
// for a given compiler, let the compile fail if it is told to use
|
||||||
|
// a feature that we cannot live without.
|
||||||
|
|
||||||
|
// Keywords added in C11.
|
||||||
|
|
||||||
|
// Emulation of C11 _Generic(). Unlike the previously defined C11
|
||||||
|
// keywords, it is not possible to implement this using exactly the same
|
||||||
|
// syntax. Therefore implement something similar under the name
|
||||||
|
// __generic(). Unlike _Generic(), this macro can only distinguish
|
||||||
|
// between a single type, so it requires nested invocations to
|
||||||
|
// distinguish multiple cases.
|
||||||
|
|
||||||
|
// C99 Static array indices in function parameter declarations. Syntax such as:
|
||||||
|
// void bar(int myArray[static 10]);
|
||||||
|
// is allowed in C99 but not in C++. Define __min_size appropriately so
|
||||||
|
// headers using it can be compiled in either language. Use like this:
|
||||||
|
// void bar(int myArray[__min_size(10)]);
|
||||||
|
|
||||||
|
// XXX: should use `#if __STDC_VERSION__ < 199901'.
|
||||||
|
|
||||||
|
// C++11 exposes a load of C99 stuff
|
||||||
|
|
||||||
|
// GCC 2.95 provides `__restrict' as an extension to C90 to support the
|
||||||
|
// C99-specific `restrict' type qualifier. We happen to use `__restrict' as
|
||||||
|
// a way to define the `restrict' type qualifier without disturbing older
|
||||||
|
// software that is unaware of C99 keywords.
|
||||||
|
|
||||||
|
// GNU C version 2.96 adds explicit branch prediction so that
|
||||||
|
// the CPU back-end can hint the processor and also so that
|
||||||
|
// code blocks can be reordered such that the predicted path
|
||||||
|
// sees a more linear flow, thus improving cache behavior, etc.
|
||||||
|
//
|
||||||
|
// The following two macros provide us with a way to utilize this
|
||||||
|
// compiler feature. Use __predict_true() if you expect the expression
|
||||||
|
// to evaluate to true, and __predict_false() if you expect the
|
||||||
|
// expression to evaluate to false.
|
||||||
|
//
|
||||||
|
// A few notes about usage:
|
||||||
|
//
|
||||||
|
// * Generally, __predict_false() error condition checks (unless
|
||||||
|
// you have some _strong_ reason to do otherwise, in which case
|
||||||
|
// document it), and/or __predict_true() `no-error' condition
|
||||||
|
// checks, assuming you want to optimize for the no-error case.
|
||||||
|
//
|
||||||
|
// * Other than that, if you don't know the likelihood of a test
|
||||||
|
// succeeding from empirical or other `hard' evidence, don't
|
||||||
|
// make predictions.
|
||||||
|
//
|
||||||
|
// * These are meant to be used in places that are run `a lot'.
|
||||||
|
// It is wasteful to make predictions in code that is run
|
||||||
|
// seldomly (e.g. at subsystem initialization time) as the
|
||||||
|
// basic block reordering that this affects can often generate
|
||||||
|
// larger code.
|
||||||
|
|
||||||
|
// We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
|
||||||
|
// require it.
|
||||||
|
|
||||||
|
// Given the pointer x to the member m of the struct s, return
|
||||||
|
// a pointer to the containing structure. When using GCC, we first
|
||||||
|
// assign pointer x to a local variable, to check that its type is
|
||||||
|
// compatible with member m.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to declare that functions take printf-like
|
||||||
|
// or scanf-like arguments. They are null except for versions of gcc
|
||||||
|
// that are known to support the features properly (old versions of gcc-2
|
||||||
|
// didn't permit keeping the keywords out of the application namespace).
|
||||||
|
|
||||||
|
// Compiler-dependent macros that rely on FreeBSD-specific extensions.
|
||||||
|
|
||||||
|
// Embed the rcs id of a source file in the resulting library. Note that in
|
||||||
|
// more recent ELF binutils, we use .ident allowing the ID to be stripped.
|
||||||
|
// Usage:
|
||||||
|
// __FBSDID("$FreeBSD$");
|
||||||
|
|
||||||
|
// -
|
||||||
|
// The following definitions are an extension of the behavior originally
|
||||||
|
// implemented in <sys/_posix.h>, but with a different level of granularity.
|
||||||
|
// POSIX.1 requires that the macros we test be defined before any standard
|
||||||
|
// header file is included.
|
||||||
|
//
|
||||||
|
// Here's a quick run-down of the versions:
|
||||||
|
// defined(_POSIX_SOURCE) 1003.1-1988
|
||||||
|
// _POSIX_C_SOURCE == 1 1003.1-1990
|
||||||
|
// _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option
|
||||||
|
// _POSIX_C_SOURCE == 199309 1003.1b-1993
|
||||||
|
// _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995,
|
||||||
|
// and the omnibus ISO/IEC 9945-1: 1996
|
||||||
|
// _POSIX_C_SOURCE == 200112 1003.1-2001
|
||||||
|
// _POSIX_C_SOURCE == 200809 1003.1-2008
|
||||||
|
//
|
||||||
|
// In addition, the X/Open Portability Guide, which is now the Single UNIX
|
||||||
|
// Specification, defines a feature-test macro which indicates the version of
|
||||||
|
// that specification, and which subsumes _POSIX_C_SOURCE.
|
||||||
|
//
|
||||||
|
// Our macros begin with two underscores to avoid namespace screwage.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
|
||||||
|
|
||||||
|
// Deal with various X/Open Portability Guides and Single UNIX Spec.
|
||||||
|
|
||||||
|
// Deal with all versions of POSIX. The ordering relative to the tests above is
|
||||||
|
// important.
|
||||||
|
// -
|
||||||
|
// Deal with _ANSI_SOURCE:
|
||||||
|
// If it is defined, and no other compilation environment is explicitly
|
||||||
|
// requested, then define our internal feature-test macros to zero. This
|
||||||
|
// makes no difference to the preprocessor (undefined symbols in preprocessing
|
||||||
|
// expressions are defined to have value zero), but makes it more convenient for
|
||||||
|
// a test program to print out the values.
|
||||||
|
//
|
||||||
|
// If a program mistakenly defines _ANSI_SOURCE and some other macro such as
|
||||||
|
// _POSIX_C_SOURCE, we will assume that it wants the broader compilation
|
||||||
|
// environment (and in fact we will never get here).
|
||||||
|
|
||||||
|
// User override __EXT1_VISIBLE
|
||||||
|
|
||||||
|
// Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
|
||||||
|
// translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
|
||||||
|
|
||||||
|
// Nullability qualifiers: currently only supported by Clang.
|
||||||
|
|
||||||
|
// Type Safety Checking
|
||||||
|
//
|
||||||
|
// Clang provides additional attributes to enable checking type safety
|
||||||
|
// properties that cannot be enforced by the C type system.
|
||||||
|
|
||||||
|
// Lock annotations.
|
||||||
|
//
|
||||||
|
// Clang provides support for doing basic thread-safety tests at
|
||||||
|
// compile-time, by marking which locks will/should be held when
|
||||||
|
// entering/leaving a functions.
|
||||||
|
//
|
||||||
|
// Furthermore, it is also possible to annotate variables and structure
|
||||||
|
// members to enforce that they are only accessed when certain locks are
|
||||||
|
// held.
|
||||||
|
|
||||||
|
// Structure implements a lock.
|
||||||
|
|
||||||
|
// Function acquires an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function attempts to acquire an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function releases a lock.
|
||||||
|
|
||||||
|
// Function asserts that an exclusive or shared lock is held.
|
||||||
|
|
||||||
|
// Function requires that an exclusive or shared lock is or is not held.
|
||||||
|
|
||||||
|
// Function should not be analyzed.
|
||||||
|
|
||||||
|
// Function or variable should not be sanitized, i.e. by AddressSanitizer.
|
||||||
|
// GCC has the nosanitize attribute, but as a function attribute only, and
|
||||||
|
// warns on use as a variable attribute.
|
||||||
|
|
||||||
|
// Guard variables and structure members by lock.
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-4-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// Copyright (c) 1990, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. All advertising materials mentioning features or use of this software
|
||||||
|
// must display the following acknowledgement:
|
||||||
|
// This product includes software developed by the University of
|
||||||
|
// California, Berkeley and its contributors.
|
||||||
|
// 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// From: @(#)ansi.h 8.2 (Berkeley) 1/4/94
|
||||||
|
// From: @(#)types.h 8.3 (Berkeley) 1/5/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1988, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)limits.h 8.3 (Berkeley) 1/4/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// According to ANSI (section 2.2.4.2), the values below must be usable by
|
||||||
|
// #if preprocessing directives. Additionally, the expression must have the
|
||||||
|
// same type as would an expression that is an object of the corresponding
|
||||||
|
// type converted according to the integral promotions. The subtraction for
|
||||||
|
// INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
|
||||||
|
// unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
|
||||||
|
|
||||||
|
// max value for an unsigned long long
|
||||||
|
|
||||||
|
// Quads and longs are the same on the amd64. Ensure they stay in sync.
|
||||||
|
|
||||||
|
// Minimum signal stack size.
|
||||||
|
|
||||||
|
// Basic types upon which most other types are built.
|
||||||
|
type X__int8_t = int8 /* _types.h:55:22 */
|
||||||
|
type X__uint8_t = uint8 /* _types.h:56:24 */
|
||||||
|
type X__int16_t = int16 /* _types.h:57:17 */
|
||||||
|
type X__uint16_t = uint16 /* _types.h:58:25 */
|
||||||
|
type X__int32_t = int32 /* _types.h:59:15 */
|
||||||
|
type X__uint32_t = uint32 /* _types.h:60:23 */
|
||||||
|
type X__int64_t = int64 /* _types.h:62:16 */
|
||||||
|
type X__uint64_t = uint64 /* _types.h:63:24 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__clock_t = X__int32_t /* _types.h:75:19 */ // clock()...
|
||||||
|
type X__critical_t = X__int64_t /* _types.h:76:19 */
|
||||||
|
type X__double_t = float64 /* _types.h:78:17 */
|
||||||
|
type X__float_t = float32 /* _types.h:79:16 */
|
||||||
|
type X__intfptr_t = X__int64_t /* _types.h:81:19 */
|
||||||
|
type X__intptr_t = X__int64_t /* _types.h:82:19 */
|
||||||
|
type X__intmax_t = X__int64_t /* _types.h:93:19 */
|
||||||
|
type X__int_fast8_t = X__int32_t /* _types.h:94:19 */
|
||||||
|
type X__int_fast16_t = X__int32_t /* _types.h:95:19 */
|
||||||
|
type X__int_fast32_t = X__int32_t /* _types.h:96:19 */
|
||||||
|
type X__int_fast64_t = X__int64_t /* _types.h:97:19 */
|
||||||
|
type X__int_least8_t = X__int8_t /* _types.h:98:18 */
|
||||||
|
type X__int_least16_t = X__int16_t /* _types.h:99:19 */
|
||||||
|
type X__int_least32_t = X__int32_t /* _types.h:100:19 */
|
||||||
|
type X__int_least64_t = X__int64_t /* _types.h:101:19 */
|
||||||
|
type X__ptrdiff_t = X__int64_t /* _types.h:103:19 */ // ptr1 - ptr2
|
||||||
|
type X__register_t = X__int64_t /* _types.h:104:19 */
|
||||||
|
type X__segsz_t = X__int64_t /* _types.h:105:19 */ // segment size (in pages)
|
||||||
|
type X__size_t = X__uint64_t /* _types.h:106:20 */ // sizeof()
|
||||||
|
type X__ssize_t = X__int64_t /* _types.h:107:19 */ // byte count or error
|
||||||
|
type X__time_t = X__int64_t /* _types.h:108:19 */ // time()...
|
||||||
|
type X__uintfptr_t = X__uint64_t /* _types.h:109:20 */
|
||||||
|
type X__uintptr_t = X__uint64_t /* _types.h:110:20 */
|
||||||
|
type X__uintmax_t = X__uint64_t /* _types.h:121:20 */
|
||||||
|
type X__uint_fast8_t = X__uint32_t /* _types.h:122:20 */
|
||||||
|
type X__uint_fast16_t = X__uint32_t /* _types.h:123:20 */
|
||||||
|
type X__uint_fast32_t = X__uint32_t /* _types.h:124:20 */
|
||||||
|
type X__uint_fast64_t = X__uint64_t /* _types.h:125:20 */
|
||||||
|
type X__uint_least8_t = X__uint8_t /* _types.h:126:19 */
|
||||||
|
type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
|
||||||
|
type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
|
||||||
|
type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
|
||||||
|
type X__u_register_t = X__uint64_t /* _types.h:131:20 */
|
||||||
|
type X__vm_offset_t = X__uint64_t /* _types.h:132:20 */
|
||||||
|
type X__vm_paddr_t = X__uint64_t /* _types.h:133:20 */
|
||||||
|
type X__vm_size_t = X__uint64_t /* _types.h:134:20 */
|
||||||
|
type X___wchar_t = int32 /* _types.h:141:14 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__blksize_t = X__int32_t /* _types.h:40:19 */ // file block size
|
||||||
|
type X__blkcnt_t = X__int64_t /* _types.h:41:19 */ // file block count
|
||||||
|
type X__clockid_t = X__int32_t /* _types.h:42:19 */ // clock_gettime()...
|
||||||
|
type X__fflags_t = X__uint32_t /* _types.h:43:20 */ // file flags
|
||||||
|
type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
|
||||||
|
type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
|
||||||
|
type X__gid_t = X__uint32_t /* _types.h:46:20 */
|
||||||
|
type X__id_t = X__int64_t /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
|
||||||
|
type X__ino_t = X__uint64_t /* _types.h:48:20 */ // inode number
|
||||||
|
type X__key_t = int64 /* _types.h:49:15 */ // IPC key (for Sys V IPC)
|
||||||
|
type X__lwpid_t = X__int32_t /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
|
||||||
|
type X__mode_t = X__uint16_t /* _types.h:51:20 */ // permissions
|
||||||
|
type X__accmode_t = int32 /* _types.h:52:14 */ // access permissions
|
||||||
|
type X__nl_item = int32 /* _types.h:53:14 */
|
||||||
|
type X__nlink_t = X__uint64_t /* _types.h:54:20 */ // link count
|
||||||
|
type X__off_t = X__int64_t /* _types.h:55:19 */ // file offset
|
||||||
|
type X__off64_t = X__int64_t /* _types.h:56:19 */ // file offset (alias)
|
||||||
|
type X__pid_t = X__int32_t /* _types.h:57:19 */ // process [group]
|
||||||
|
type X__rlim_t = X__int64_t /* _types.h:58:19 */ // resource limit - intentionally
|
||||||
|
// signed, because of legacy code
|
||||||
|
// that uses -1 for RLIM_INFINITY
|
||||||
|
type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
|
||||||
|
type X__socklen_t = X__uint32_t /* _types.h:62:20 */
|
||||||
|
type X__suseconds_t = int64 /* _types.h:63:15 */ // microseconds (signed)
|
||||||
|
type X__timer_t = uintptr /* _types.h:64:24 */ // timer_gettime()...
|
||||||
|
type X__mqd_t = uintptr /* _types.h:65:21 */ // mq_open()...
|
||||||
|
type X__uid_t = X__uint32_t /* _types.h:66:20 */
|
||||||
|
type X__useconds_t = uint32 /* _types.h:67:22 */ // microseconds (unsigned)
|
||||||
|
type X__cpuwhich_t = int32 /* _types.h:68:14 */ // which parameter for cpuset.
|
||||||
|
type X__cpulevel_t = int32 /* _types.h:69:14 */ // level parameter for cpuset.
|
||||||
|
type X__cpusetid_t = int32 /* _types.h:70:14 */ // cpuset identifier.
|
||||||
|
type X__daddr_t = X__int64_t /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
|
||||||
|
|
||||||
|
// Unusual type definitions.
|
||||||
|
// rune_t is declared to be an ``int'' instead of the more natural
|
||||||
|
// ``unsigned long'' or ``long''. Two things are happening here. It is not
|
||||||
|
// unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
|
||||||
|
// it looks like 10646 will be a 31 bit standard. This means that if your
|
||||||
|
// ints cannot hold 32 bits, you will be in trouble. The reason an int was
|
||||||
|
// chosen over a long is that the is*() and to*() routines take ints (says
|
||||||
|
// ANSI C), but they use __ct_rune_t instead of int.
|
||||||
|
//
|
||||||
|
// NOTE: rune_t is not covered by ANSI nor other standards, and should not
|
||||||
|
// be instantiated outside of lib/libc/locale. Use wchar_t. wint_t and
|
||||||
|
// rune_t must be the same type. Also, wint_t should be able to hold all
|
||||||
|
// members of the largest character set plus one extra value (WEOF), and
|
||||||
|
// must be at least 16 bits.
|
||||||
|
type X__ct_rune_t = int32 /* _types.h:91:14 */ // arg type for ctype funcs
|
||||||
|
type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
|
||||||
|
type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
|
||||||
|
|
||||||
|
// Clang already provides these types as built-ins, but only in C++ mode.
|
||||||
|
type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
|
||||||
|
type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
|
||||||
|
// In C++11, char16_t and char32_t are built-in types.
|
||||||
|
|
||||||
|
type X__max_align_t = struct {
|
||||||
|
F__max_align1 int64
|
||||||
|
F__max_align2 float64
|
||||||
|
} /* _types.h:111:3 */
|
||||||
|
|
||||||
|
type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
|
||||||
|
|
||||||
|
type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
|
||||||
|
|
||||||
|
// mbstate_t is an opaque object to keep conversion state during multibyte
|
||||||
|
// stream conversions.
|
||||||
|
type X__mbstate_t = struct {
|
||||||
|
_ [0]uint64
|
||||||
|
F__mbstate8 [128]int8
|
||||||
|
} /* _types.h:124:3 */
|
||||||
|
|
||||||
|
type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
|
||||||
|
|
||||||
|
// Types for varargs. These are all provided by builtin types these
|
||||||
|
// days, so centralize their definition.
|
||||||
|
type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
|
||||||
|
type X__gnuc_va_list = X__va_list /* _types.h:140:20 */ // compatibility w/GNU headers
|
||||||
|
|
||||||
|
// When the following macro is defined, the system uses 64-bit inode numbers.
|
||||||
|
// Programs can use this to avoid including <sys/param.h>, with its associated
|
||||||
|
// namespace pollution.
|
||||||
|
|
||||||
|
type X_ftsent = struct {
|
||||||
|
Ffts_cycle uintptr
|
||||||
|
Ffts_parent uintptr
|
||||||
|
Ffts_link uintptr
|
||||||
|
Ffts_number int64
|
||||||
|
Ffts_pointer uintptr
|
||||||
|
Ffts_accpath uintptr
|
||||||
|
Ffts_path uintptr
|
||||||
|
Ffts_errno int32
|
||||||
|
Ffts_symfd int32
|
||||||
|
Ffts_pathlen X__size_t
|
||||||
|
Ffts_namelen X__size_t
|
||||||
|
Ffts_ino X__ino_t
|
||||||
|
Ffts_dev X__dev_t
|
||||||
|
Ffts_nlink X__nlink_t
|
||||||
|
Ffts_level int64
|
||||||
|
Ffts_info int32
|
||||||
|
Ffts_flags uint32
|
||||||
|
Ffts_instr int32
|
||||||
|
_ [4]byte
|
||||||
|
Ffts_statp uintptr
|
||||||
|
Ffts_name uintptr
|
||||||
|
Ffts_fts uintptr
|
||||||
|
} /* fts.h:41:2 */
|
||||||
|
|
||||||
|
// compatibility w/GNU headers
|
||||||
|
|
||||||
|
// When the following macro is defined, the system uses 64-bit inode numbers.
|
||||||
|
// Programs can use this to avoid including <sys/param.h>, with its associated
|
||||||
|
// namespace pollution.
|
||||||
|
|
||||||
|
type FTS = struct {
|
||||||
|
Ffts_cur uintptr
|
||||||
|
Ffts_child uintptr
|
||||||
|
Ffts_array uintptr
|
||||||
|
Ffts_dev X__dev_t
|
||||||
|
Ffts_path uintptr
|
||||||
|
Ffts_rfd int32
|
||||||
|
_ [4]byte
|
||||||
|
Ffts_pathlen X__size_t
|
||||||
|
Ffts_nitems X__size_t
|
||||||
|
Ffts_compar uintptr
|
||||||
|
Ffts_options int32
|
||||||
|
_ [4]byte
|
||||||
|
Ffts_clientptr uintptr
|
||||||
|
} /* fts.h:66:3 */
|
||||||
|
|
||||||
|
type FTSENT = X_ftsent /* fts.h:120:3 */
|
||||||
|
|
||||||
|
var _ int8 /* gen.c:2:13: */
|
|
@ -4,9 +4,9 @@ go 1.15
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/mattn/go-isatty v0.0.12
|
github.com/mattn/go-isatty v0.0.12
|
||||||
golang.org/x/sys v0.0.0-20201126233918-771906719818
|
golang.org/x/sys v0.0.0-20210902050250-f475640dd07b
|
||||||
modernc.org/cc/v3 v3.33.11 // indirect
|
modernc.org/cc/v3 v3.34.0 // indirect
|
||||||
modernc.org/ccgo/v3 v3.10.0 // indirect
|
modernc.org/ccgo/v3 v3.11.1 // indirect
|
||||||
modernc.org/mathutil v1.4.1
|
modernc.org/mathutil v1.4.1
|
||||||
modernc.org/memory v1.0.5
|
modernc.org/memory v1.0.5
|
||||||
)
|
)
|
||||||
|
|
|
@ -21,8 +21,9 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h
|
||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20201126233918-771906719818 h1:f1CIuDlJhwANEC2MM87MBEVMr3jl5bifgsfj90XAF9c=
|
|
||||||
golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
|
golang.org/x/sys v0.0.0-20210902050250-f475640dd07b h1:S7hKs0Flbq0bbc9xgYt4stIEG1zNDFqyrPwAX2Wj/sE=
|
||||||
|
golang.org/x/sys v0.0.0-20210902050250-f475640dd07b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
|
@ -38,13 +39,18 @@ lukechampine.com/uint128 v1.1.1 h1:pnxCASz787iMf+02ssImqk6OLt+Z5QHMoZyUXR4z6JU=
|
||||||
lukechampine.com/uint128 v1.1.1/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
|
lukechampine.com/uint128 v1.1.1/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk=
|
||||||
modernc.org/cc/v3 v3.33.6/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
modernc.org/cc/v3 v3.33.6/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
modernc.org/cc/v3 v3.33.9/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
modernc.org/cc/v3 v3.33.9/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
modernc.org/cc/v3 v3.33.11 h1:Fc7goiKCzfHvGR4WZbVLWIh/4VhJE2Z31Jkg36Ezp7Q=
|
|
||||||
modernc.org/cc/v3 v3.33.11/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
modernc.org/cc/v3 v3.33.11/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
|
modernc.org/cc/v3 v3.34.0 h1:dFhZc/HKR3qp92sYQxKRRaDMz+sr1bwcFD+m7LSCrAs=
|
||||||
|
modernc.org/cc/v3 v3.34.0/go.mod h1:iPJg1pkwXqAV16SNgFBVYmggfMg6xhs+2oiO0vclK3g=
|
||||||
modernc.org/ccgo/v3 v3.9.5/go.mod h1:umuo2EP2oDSBnD3ckjaVUXMrmeAw8C8OSICVa0iFf60=
|
modernc.org/ccgo/v3 v3.9.5/go.mod h1:umuo2EP2oDSBnD3ckjaVUXMrmeAw8C8OSICVa0iFf60=
|
||||||
modernc.org/ccgo/v3 v3.10.0 h1:aHbPfX9EIwax9IqqMErOtMS+MgRLCr67Id/VPPQUg5E=
|
|
||||||
modernc.org/ccgo/v3 v3.10.0/go.mod h1:c0yBmkRFi7uW4J7fwx/JiijwOjeAeR2NoSaRVFPmjMw=
|
modernc.org/ccgo/v3 v3.10.0/go.mod h1:c0yBmkRFi7uW4J7fwx/JiijwOjeAeR2NoSaRVFPmjMw=
|
||||||
|
modernc.org/ccgo/v3 v3.11.0/go.mod h1:dGNposbDp9TOZ/1KBxghxtUp/bzErD0/0QW4hhSaBMI=
|
||||||
|
modernc.org/ccgo/v3 v3.11.1 h1:ofHyxpKFARlebn+Vt2K9hpWEtbV9xRcOQVa1/vHfLws=
|
||||||
|
modernc.org/ccgo/v3 v3.11.1/go.mod h1:lWHxfsn13L3f7hgGsGlU28D9eUOf6y3ZYHKoPaKU0ag=
|
||||||
modernc.org/libc v1.9.8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w=
|
modernc.org/libc v1.9.8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w=
|
||||||
modernc.org/libc v1.9.11/go.mod h1:NyF3tsA5ArIjJ83XB0JlqhjTabTCHm9aX4XMPHyQn0Q=
|
modernc.org/libc v1.9.11/go.mod h1:NyF3tsA5ArIjJ83XB0JlqhjTabTCHm9aX4XMPHyQn0Q=
|
||||||
|
modernc.org/libc v1.11.0/go.mod h1:2lOfPmj7cz+g1MrPNmX65QCzVxgNq2C5o0jdLY2gAYg=
|
||||||
|
modernc.org/libc v1.11.2/go.mod h1:ioIyrl3ETkugDO3SGZ+6EOKvlP3zSOycUETe4XM4n8M=
|
||||||
modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
||||||
modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
||||||
modernc.org/mathutil v1.4.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
modernc.org/mathutil v1.4.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
// Code generated by 'ccgo grp/gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o grp/grp_freebsd_amd64.go -pkgname grp', DO NOT EDIT.
|
||||||
|
|
||||||
|
package grp
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{}
|
|
@ -0,0 +1,613 @@
|
||||||
|
// Code generated by 'ccgo grp/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o grp/grp_freebsd_amd64.go -pkgname grp', DO NOT EDIT.
|
||||||
|
|
||||||
|
package grp
|
||||||
|
|
||||||
|
import (
|
||||||
|
"math"
|
||||||
|
"reflect"
|
||||||
|
"sync/atomic"
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ = math.Pi
|
||||||
|
var _ reflect.Kind
|
||||||
|
var _ atomic.Value
|
||||||
|
var _ unsafe.Pointer
|
||||||
|
|
||||||
|
const (
|
||||||
|
X_FILE_OFFSET_BITS = 64
|
||||||
|
X_GID_T_DECLARED = 0
|
||||||
|
X_GRP_H_ = 0
|
||||||
|
X_LP64 = 1
|
||||||
|
X_MACHINE__LIMITS_H_ = 0
|
||||||
|
X_MACHINE__TYPES_H_ = 0
|
||||||
|
X_Nonnull = 0
|
||||||
|
X_Null_unspecified = 0
|
||||||
|
X_Nullable = 0
|
||||||
|
X_PATH_GROUP = "/etc/group"
|
||||||
|
X_SIZE_T_DECLARED = 0
|
||||||
|
X_SYS_CDEFS_H_ = 0
|
||||||
|
X_SYS__TYPES_H_ = 0
|
||||||
|
Unix = 1
|
||||||
|
)
|
||||||
|
|
||||||
|
type Ptrdiff_t = int64 /* <builtin>:3:26 */
|
||||||
|
|
||||||
|
type Size_t = uint64 /* <builtin>:9:23 */
|
||||||
|
|
||||||
|
type Wchar_t = int32 /* <builtin>:15:24 */
|
||||||
|
|
||||||
|
type X__int128_t = struct {
|
||||||
|
Flo int64
|
||||||
|
Fhi int64
|
||||||
|
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
|
||||||
|
type X__uint128_t = struct {
|
||||||
|
Flo uint64
|
||||||
|
Fhi uint64
|
||||||
|
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
|
||||||
|
|
||||||
|
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
|
||||||
|
type X__float128 = float64 /* <builtin>:47:21 */
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1989, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
// (c) UNIX System Laboratories, Inc.
|
||||||
|
// All or some portions of this file are derived from material licensed
|
||||||
|
// to the University of California by American Telephone and Telegraph
|
||||||
|
// Co. or Unix System Laboratories, Inc. and are reproduced herein with
|
||||||
|
// the permission of UNIX System Laboratories, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)grp.h 8.2 (Berkeley) 1/21/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// Testing against Clang-specific extensions.
|
||||||
|
|
||||||
|
// This code has been put in place to help reduce the addition of
|
||||||
|
// compiler specific defines in FreeBSD code. It helps to aid in
|
||||||
|
// having a compiler-agnostic source tree.
|
||||||
|
|
||||||
|
// Compiler memory barriers, specific to gcc and clang.
|
||||||
|
|
||||||
|
// XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
|
||||||
|
|
||||||
|
// Macro to test if we're using a specific version of gcc or later.
|
||||||
|
|
||||||
|
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
|
||||||
|
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
|
||||||
|
// The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
|
||||||
|
// mode -- there must be no spaces between its arguments, and for nested
|
||||||
|
// __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also
|
||||||
|
// concatenate double-quoted strings produced by the __STRING macro, but
|
||||||
|
// this only works with ANSI C.
|
||||||
|
//
|
||||||
|
// __XSTRING is like __STRING, but it expands any macros in its argument
|
||||||
|
// first. It is only available with ANSI C.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to help declare dead (non-returning) and
|
||||||
|
// pure (no side effects) functions, and unused variables. They are
|
||||||
|
// null except for versions of gcc that are known to support the features
|
||||||
|
// properly (old versions of gcc-2 supported the dead and pure features
|
||||||
|
// in a different (wrong) way). If we do not provide an implementation
|
||||||
|
// for a given compiler, let the compile fail if it is told to use
|
||||||
|
// a feature that we cannot live without.
|
||||||
|
|
||||||
|
// Keywords added in C11.
|
||||||
|
|
||||||
|
// Emulation of C11 _Generic(). Unlike the previously defined C11
|
||||||
|
// keywords, it is not possible to implement this using exactly the same
|
||||||
|
// syntax. Therefore implement something similar under the name
|
||||||
|
// __generic(). Unlike _Generic(), this macro can only distinguish
|
||||||
|
// between a single type, so it requires nested invocations to
|
||||||
|
// distinguish multiple cases.
|
||||||
|
|
||||||
|
// C99 Static array indices in function parameter declarations. Syntax such as:
|
||||||
|
// void bar(int myArray[static 10]);
|
||||||
|
// is allowed in C99 but not in C++. Define __min_size appropriately so
|
||||||
|
// headers using it can be compiled in either language. Use like this:
|
||||||
|
// void bar(int myArray[__min_size(10)]);
|
||||||
|
|
||||||
|
// XXX: should use `#if __STDC_VERSION__ < 199901'.
|
||||||
|
|
||||||
|
// C++11 exposes a load of C99 stuff
|
||||||
|
|
||||||
|
// GCC 2.95 provides `__restrict' as an extension to C90 to support the
|
||||||
|
// C99-specific `restrict' type qualifier. We happen to use `__restrict' as
|
||||||
|
// a way to define the `restrict' type qualifier without disturbing older
|
||||||
|
// software that is unaware of C99 keywords.
|
||||||
|
|
||||||
|
// GNU C version 2.96 adds explicit branch prediction so that
|
||||||
|
// the CPU back-end can hint the processor and also so that
|
||||||
|
// code blocks can be reordered such that the predicted path
|
||||||
|
// sees a more linear flow, thus improving cache behavior, etc.
|
||||||
|
//
|
||||||
|
// The following two macros provide us with a way to utilize this
|
||||||
|
// compiler feature. Use __predict_true() if you expect the expression
|
||||||
|
// to evaluate to true, and __predict_false() if you expect the
|
||||||
|
// expression to evaluate to false.
|
||||||
|
//
|
||||||
|
// A few notes about usage:
|
||||||
|
//
|
||||||
|
// * Generally, __predict_false() error condition checks (unless
|
||||||
|
// you have some _strong_ reason to do otherwise, in which case
|
||||||
|
// document it), and/or __predict_true() `no-error' condition
|
||||||
|
// checks, assuming you want to optimize for the no-error case.
|
||||||
|
//
|
||||||
|
// * Other than that, if you don't know the likelihood of a test
|
||||||
|
// succeeding from empirical or other `hard' evidence, don't
|
||||||
|
// make predictions.
|
||||||
|
//
|
||||||
|
// * These are meant to be used in places that are run `a lot'.
|
||||||
|
// It is wasteful to make predictions in code that is run
|
||||||
|
// seldomly (e.g. at subsystem initialization time) as the
|
||||||
|
// basic block reordering that this affects can often generate
|
||||||
|
// larger code.
|
||||||
|
|
||||||
|
// We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
|
||||||
|
// require it.
|
||||||
|
|
||||||
|
// Given the pointer x to the member m of the struct s, return
|
||||||
|
// a pointer to the containing structure. When using GCC, we first
|
||||||
|
// assign pointer x to a local variable, to check that its type is
|
||||||
|
// compatible with member m.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to declare that functions take printf-like
|
||||||
|
// or scanf-like arguments. They are null except for versions of gcc
|
||||||
|
// that are known to support the features properly (old versions of gcc-2
|
||||||
|
// didn't permit keeping the keywords out of the application namespace).
|
||||||
|
|
||||||
|
// Compiler-dependent macros that rely on FreeBSD-specific extensions.
|
||||||
|
|
||||||
|
// Embed the rcs id of a source file in the resulting library. Note that in
|
||||||
|
// more recent ELF binutils, we use .ident allowing the ID to be stripped.
|
||||||
|
// Usage:
|
||||||
|
// __FBSDID("$FreeBSD$");
|
||||||
|
|
||||||
|
// -
|
||||||
|
// The following definitions are an extension of the behavior originally
|
||||||
|
// implemented in <sys/_posix.h>, but with a different level of granularity.
|
||||||
|
// POSIX.1 requires that the macros we test be defined before any standard
|
||||||
|
// header file is included.
|
||||||
|
//
|
||||||
|
// Here's a quick run-down of the versions:
|
||||||
|
// defined(_POSIX_SOURCE) 1003.1-1988
|
||||||
|
// _POSIX_C_SOURCE == 1 1003.1-1990
|
||||||
|
// _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option
|
||||||
|
// _POSIX_C_SOURCE == 199309 1003.1b-1993
|
||||||
|
// _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995,
|
||||||
|
// and the omnibus ISO/IEC 9945-1: 1996
|
||||||
|
// _POSIX_C_SOURCE == 200112 1003.1-2001
|
||||||
|
// _POSIX_C_SOURCE == 200809 1003.1-2008
|
||||||
|
//
|
||||||
|
// In addition, the X/Open Portability Guide, which is now the Single UNIX
|
||||||
|
// Specification, defines a feature-test macro which indicates the version of
|
||||||
|
// that specification, and which subsumes _POSIX_C_SOURCE.
|
||||||
|
//
|
||||||
|
// Our macros begin with two underscores to avoid namespace screwage.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
|
||||||
|
|
||||||
|
// Deal with various X/Open Portability Guides and Single UNIX Spec.
|
||||||
|
|
||||||
|
// Deal with all versions of POSIX. The ordering relative to the tests above is
|
||||||
|
// important.
|
||||||
|
// -
|
||||||
|
// Deal with _ANSI_SOURCE:
|
||||||
|
// If it is defined, and no other compilation environment is explicitly
|
||||||
|
// requested, then define our internal feature-test macros to zero. This
|
||||||
|
// makes no difference to the preprocessor (undefined symbols in preprocessing
|
||||||
|
// expressions are defined to have value zero), but makes it more convenient for
|
||||||
|
// a test program to print out the values.
|
||||||
|
//
|
||||||
|
// If a program mistakenly defines _ANSI_SOURCE and some other macro such as
|
||||||
|
// _POSIX_C_SOURCE, we will assume that it wants the broader compilation
|
||||||
|
// environment (and in fact we will never get here).
|
||||||
|
|
||||||
|
// User override __EXT1_VISIBLE
|
||||||
|
|
||||||
|
// Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
|
||||||
|
// translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
|
||||||
|
|
||||||
|
// Nullability qualifiers: currently only supported by Clang.
|
||||||
|
|
||||||
|
// Type Safety Checking
|
||||||
|
//
|
||||||
|
// Clang provides additional attributes to enable checking type safety
|
||||||
|
// properties that cannot be enforced by the C type system.
|
||||||
|
|
||||||
|
// Lock annotations.
|
||||||
|
//
|
||||||
|
// Clang provides support for doing basic thread-safety tests at
|
||||||
|
// compile-time, by marking which locks will/should be held when
|
||||||
|
// entering/leaving a functions.
|
||||||
|
//
|
||||||
|
// Furthermore, it is also possible to annotate variables and structure
|
||||||
|
// members to enforce that they are only accessed when certain locks are
|
||||||
|
// held.
|
||||||
|
|
||||||
|
// Structure implements a lock.
|
||||||
|
|
||||||
|
// Function acquires an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function attempts to acquire an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function releases a lock.
|
||||||
|
|
||||||
|
// Function asserts that an exclusive or shared lock is held.
|
||||||
|
|
||||||
|
// Function requires that an exclusive or shared lock is or is not held.
|
||||||
|
|
||||||
|
// Function should not be analyzed.
|
||||||
|
|
||||||
|
// Function or variable should not be sanitized, i.e. by AddressSanitizer.
|
||||||
|
// GCC has the nosanitize attribute, but as a function attribute only, and
|
||||||
|
// warns on use as a variable attribute.
|
||||||
|
|
||||||
|
// Guard variables and structure members by lock.
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||||
|
//
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-4-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// Copyright (c) 1990, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. All advertising materials mentioning features or use of this software
|
||||||
|
// must display the following acknowledgement:
|
||||||
|
// This product includes software developed by the University of
|
||||||
|
// California, Berkeley and its contributors.
|
||||||
|
// 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// From: @(#)ansi.h 8.2 (Berkeley) 1/4/94
|
||||||
|
// From: @(#)types.h 8.3 (Berkeley) 1/5/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1988, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)limits.h 8.3 (Berkeley) 1/4/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// According to ANSI (section 2.2.4.2), the values below must be usable by
|
||||||
|
// #if preprocessing directives. Additionally, the expression must have the
|
||||||
|
// same type as would an expression that is an object of the corresponding
|
||||||
|
// type converted according to the integral promotions. The subtraction for
|
||||||
|
// INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
|
||||||
|
// unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
|
||||||
|
|
||||||
|
// max value for an unsigned long long
|
||||||
|
|
||||||
|
// Quads and longs are the same on the amd64. Ensure they stay in sync.
|
||||||
|
|
||||||
|
// Minimum signal stack size.
|
||||||
|
|
||||||
|
// Basic types upon which most other types are built.
|
||||||
|
type X__int8_t = int8 /* _types.h:55:22 */
|
||||||
|
type X__uint8_t = uint8 /* _types.h:56:24 */
|
||||||
|
type X__int16_t = int16 /* _types.h:57:17 */
|
||||||
|
type X__uint16_t = uint16 /* _types.h:58:25 */
|
||||||
|
type X__int32_t = int32 /* _types.h:59:15 */
|
||||||
|
type X__uint32_t = uint32 /* _types.h:60:23 */
|
||||||
|
type X__int64_t = int64 /* _types.h:62:16 */
|
||||||
|
type X__uint64_t = uint64 /* _types.h:63:24 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__clock_t = X__int32_t /* _types.h:75:19 */ // clock()...
|
||||||
|
type X__critical_t = X__int64_t /* _types.h:76:19 */
|
||||||
|
type X__double_t = float64 /* _types.h:78:17 */
|
||||||
|
type X__float_t = float32 /* _types.h:79:16 */
|
||||||
|
type X__intfptr_t = X__int64_t /* _types.h:81:19 */
|
||||||
|
type X__intptr_t = X__int64_t /* _types.h:82:19 */
|
||||||
|
type X__intmax_t = X__int64_t /* _types.h:93:19 */
|
||||||
|
type X__int_fast8_t = X__int32_t /* _types.h:94:19 */
|
||||||
|
type X__int_fast16_t = X__int32_t /* _types.h:95:19 */
|
||||||
|
type X__int_fast32_t = X__int32_t /* _types.h:96:19 */
|
||||||
|
type X__int_fast64_t = X__int64_t /* _types.h:97:19 */
|
||||||
|
type X__int_least8_t = X__int8_t /* _types.h:98:18 */
|
||||||
|
type X__int_least16_t = X__int16_t /* _types.h:99:19 */
|
||||||
|
type X__int_least32_t = X__int32_t /* _types.h:100:19 */
|
||||||
|
type X__int_least64_t = X__int64_t /* _types.h:101:19 */
|
||||||
|
type X__ptrdiff_t = X__int64_t /* _types.h:103:19 */ // ptr1 - ptr2
|
||||||
|
type X__register_t = X__int64_t /* _types.h:104:19 */
|
||||||
|
type X__segsz_t = X__int64_t /* _types.h:105:19 */ // segment size (in pages)
|
||||||
|
type X__size_t = X__uint64_t /* _types.h:106:20 */ // sizeof()
|
||||||
|
type X__ssize_t = X__int64_t /* _types.h:107:19 */ // byte count or error
|
||||||
|
type X__time_t = X__int64_t /* _types.h:108:19 */ // time()...
|
||||||
|
type X__uintfptr_t = X__uint64_t /* _types.h:109:20 */
|
||||||
|
type X__uintptr_t = X__uint64_t /* _types.h:110:20 */
|
||||||
|
type X__uintmax_t = X__uint64_t /* _types.h:121:20 */
|
||||||
|
type X__uint_fast8_t = X__uint32_t /* _types.h:122:20 */
|
||||||
|
type X__uint_fast16_t = X__uint32_t /* _types.h:123:20 */
|
||||||
|
type X__uint_fast32_t = X__uint32_t /* _types.h:124:20 */
|
||||||
|
type X__uint_fast64_t = X__uint64_t /* _types.h:125:20 */
|
||||||
|
type X__uint_least8_t = X__uint8_t /* _types.h:126:19 */
|
||||||
|
type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
|
||||||
|
type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
|
||||||
|
type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
|
||||||
|
type X__u_register_t = X__uint64_t /* _types.h:131:20 */
|
||||||
|
type X__vm_offset_t = X__uint64_t /* _types.h:132:20 */
|
||||||
|
type X__vm_paddr_t = X__uint64_t /* _types.h:133:20 */
|
||||||
|
type X__vm_size_t = X__uint64_t /* _types.h:134:20 */
|
||||||
|
type X___wchar_t = int32 /* _types.h:141:14 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__blksize_t = X__int32_t /* _types.h:40:19 */ // file block size
|
||||||
|
type X__blkcnt_t = X__int64_t /* _types.h:41:19 */ // file block count
|
||||||
|
type X__clockid_t = X__int32_t /* _types.h:42:19 */ // clock_gettime()...
|
||||||
|
type X__fflags_t = X__uint32_t /* _types.h:43:20 */ // file flags
|
||||||
|
type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
|
||||||
|
type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
|
||||||
|
type X__gid_t = X__uint32_t /* _types.h:46:20 */
|
||||||
|
type X__id_t = X__int64_t /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
|
||||||
|
type X__ino_t = X__uint64_t /* _types.h:48:20 */ // inode number
|
||||||
|
type X__key_t = int64 /* _types.h:49:15 */ // IPC key (for Sys V IPC)
|
||||||
|
type X__lwpid_t = X__int32_t /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
|
||||||
|
type X__mode_t = X__uint16_t /* _types.h:51:20 */ // permissions
|
||||||
|
type X__accmode_t = int32 /* _types.h:52:14 */ // access permissions
|
||||||
|
type X__nl_item = int32 /* _types.h:53:14 */
|
||||||
|
type X__nlink_t = X__uint64_t /* _types.h:54:20 */ // link count
|
||||||
|
type X__off_t = X__int64_t /* _types.h:55:19 */ // file offset
|
||||||
|
type X__off64_t = X__int64_t /* _types.h:56:19 */ // file offset (alias)
|
||||||
|
type X__pid_t = X__int32_t /* _types.h:57:19 */ // process [group]
|
||||||
|
type X__rlim_t = X__int64_t /* _types.h:58:19 */ // resource limit - intentionally
|
||||||
|
// signed, because of legacy code
|
||||||
|
// that uses -1 for RLIM_INFINITY
|
||||||
|
type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
|
||||||
|
type X__socklen_t = X__uint32_t /* _types.h:62:20 */
|
||||||
|
type X__suseconds_t = int64 /* _types.h:63:15 */ // microseconds (signed)
|
||||||
|
type X__timer_t = uintptr /* _types.h:64:24 */ // timer_gettime()...
|
||||||
|
type X__mqd_t = uintptr /* _types.h:65:21 */ // mq_open()...
|
||||||
|
type X__uid_t = X__uint32_t /* _types.h:66:20 */
|
||||||
|
type X__useconds_t = uint32 /* _types.h:67:22 */ // microseconds (unsigned)
|
||||||
|
type X__cpuwhich_t = int32 /* _types.h:68:14 */ // which parameter for cpuset.
|
||||||
|
type X__cpulevel_t = int32 /* _types.h:69:14 */ // level parameter for cpuset.
|
||||||
|
type X__cpusetid_t = int32 /* _types.h:70:14 */ // cpuset identifier.
|
||||||
|
type X__daddr_t = X__int64_t /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
|
||||||
|
|
||||||
|
// Unusual type definitions.
|
||||||
|
// rune_t is declared to be an ``int'' instead of the more natural
|
||||||
|
// ``unsigned long'' or ``long''. Two things are happening here. It is not
|
||||||
|
// unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
|
||||||
|
// it looks like 10646 will be a 31 bit standard. This means that if your
|
||||||
|
// ints cannot hold 32 bits, you will be in trouble. The reason an int was
|
||||||
|
// chosen over a long is that the is*() and to*() routines take ints (says
|
||||||
|
// ANSI C), but they use __ct_rune_t instead of int.
|
||||||
|
//
|
||||||
|
// NOTE: rune_t is not covered by ANSI nor other standards, and should not
|
||||||
|
// be instantiated outside of lib/libc/locale. Use wchar_t. wint_t and
|
||||||
|
// rune_t must be the same type. Also, wint_t should be able to hold all
|
||||||
|
// members of the largest character set plus one extra value (WEOF), and
|
||||||
|
// must be at least 16 bits.
|
||||||
|
type X__ct_rune_t = int32 /* _types.h:91:14 */ // arg type for ctype funcs
|
||||||
|
type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
|
||||||
|
type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
|
||||||
|
|
||||||
|
// Clang already provides these types as built-ins, but only in C++ mode.
|
||||||
|
type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
|
||||||
|
type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
|
||||||
|
// In C++11, char16_t and char32_t are built-in types.
|
||||||
|
|
||||||
|
type X__max_align_t = struct {
|
||||||
|
F__max_align1 int64
|
||||||
|
F__max_align2 float64
|
||||||
|
} /* _types.h:111:3 */
|
||||||
|
|
||||||
|
type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
|
||||||
|
|
||||||
|
type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
|
||||||
|
|
||||||
|
// mbstate_t is an opaque object to keep conversion state during multibyte
|
||||||
|
// stream conversions.
|
||||||
|
type X__mbstate_t = struct {
|
||||||
|
_ [0]uint64
|
||||||
|
F__mbstate8 [128]int8
|
||||||
|
} /* _types.h:124:3 */
|
||||||
|
|
||||||
|
type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
|
||||||
|
|
||||||
|
// Types for varargs. These are all provided by builtin types these
|
||||||
|
// days, so centralize their definition.
|
||||||
|
type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
|
||||||
|
type X__gnuc_va_list = X__va_list /* _types.h:140:20 */ // compatibility w/GNU headers
|
||||||
|
|
||||||
|
// When the following macro is defined, the system uses 64-bit inode numbers.
|
||||||
|
// Programs can use this to avoid including <sys/param.h>, with its associated
|
||||||
|
// namespace pollution.
|
||||||
|
|
||||||
|
type Gid_t = X__gid_t /* grp.h:49:18 */
|
||||||
|
|
||||||
|
type Group = struct {
|
||||||
|
Fgr_name uintptr
|
||||||
|
Fgr_passwd uintptr
|
||||||
|
Fgr_gid Gid_t
|
||||||
|
_ [4]byte
|
||||||
|
Fgr_mem uintptr
|
||||||
|
} /* grp.h:58:1 */
|
||||||
|
|
||||||
|
var _ int8 /* gen.c:2:13: */
|
|
@ -0,0 +1,65 @@
|
||||||
|
// Copyright 2010 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE-GO file.
|
||||||
|
|
||||||
|
// Modifications Copyright 2020 The Libc Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
package libc // import "modernc.org/libc"
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"sync"
|
||||||
|
"time"
|
||||||
|
"unsafe"
|
||||||
|
|
||||||
|
"golang.org/x/sys/unix"
|
||||||
|
)
|
||||||
|
|
||||||
|
// Random number state.
|
||||||
|
// We generate random temporary file names so that there's a good
|
||||||
|
// chance the file doesn't exist yet - keeps the number of tries in
|
||||||
|
// TempFile to a minimum.
|
||||||
|
var randState uint32
|
||||||
|
var randStateMu sync.Mutex
|
||||||
|
|
||||||
|
func reseed() uint32 {
|
||||||
|
return uint32(time.Now().UnixNano() + int64(os.Getpid()))
|
||||||
|
}
|
||||||
|
|
||||||
|
func nextRandom(x uintptr) {
|
||||||
|
randStateMu.Lock()
|
||||||
|
r := randState
|
||||||
|
if r == 0 {
|
||||||
|
r = reseed()
|
||||||
|
}
|
||||||
|
r = r*1664525 + 1013904223 // constants from Numerical Recipes
|
||||||
|
randState = r
|
||||||
|
randStateMu.Unlock()
|
||||||
|
copy((*RawMem)(unsafe.Pointer(x))[:6:6], fmt.Sprintf("%06d", int(1e9+r%1e9)%1e6))
|
||||||
|
}
|
||||||
|
|
||||||
|
func tempFile(s, x uintptr) (fd int, err error) {
|
||||||
|
const maxTry = 10000
|
||||||
|
nconflict := 0
|
||||||
|
for i := 0; i < maxTry; i++ {
|
||||||
|
nextRandom(x)
|
||||||
|
if fd, err = unix.Open(GoString(s), os.O_RDWR|os.O_CREATE|os.O_EXCL, 0600); err == nil {
|
||||||
|
return fd, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if !os.IsExist(err) {
|
||||||
|
return -1, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if nconflict++; nconflict > 10 {
|
||||||
|
randStateMu.Lock()
|
||||||
|
randState = reseed()
|
||||||
|
nconflict = 0
|
||||||
|
randStateMu.Unlock()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return -1, err
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
// Code generated by 'ccgo langinfo/gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o langinfo/langinfo_freebsd_amd64.go -pkgname langinfo', DO NOT EDIT.
|
||||||
|
|
||||||
|
package langinfo
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{}
|
|
@ -0,0 +1,700 @@
|
||||||
|
// Code generated by 'ccgo langinfo/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o langinfo/langinfo_freebsd_amd64.go -pkgname langinfo', DO NOT EDIT.
|
||||||
|
|
||||||
|
package langinfo
|
||||||
|
|
||||||
|
import (
|
||||||
|
"math"
|
||||||
|
"reflect"
|
||||||
|
"sync/atomic"
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ = math.Pi
|
||||||
|
var _ reflect.Kind
|
||||||
|
var _ atomic.Value
|
||||||
|
var _ unsafe.Pointer
|
||||||
|
|
||||||
|
const (
|
||||||
|
ABDAY_1 = 14
|
||||||
|
ABDAY_2 = 15
|
||||||
|
ABDAY_3 = 16
|
||||||
|
ABDAY_4 = 17
|
||||||
|
ABDAY_5 = 18
|
||||||
|
ABDAY_6 = 19
|
||||||
|
ABDAY_7 = 20
|
||||||
|
ABMON_1 = 33
|
||||||
|
ABMON_10 = 42
|
||||||
|
ABMON_11 = 43
|
||||||
|
ABMON_12 = 44
|
||||||
|
ABMON_2 = 34
|
||||||
|
ABMON_3 = 35
|
||||||
|
ABMON_4 = 36
|
||||||
|
ABMON_5 = 37
|
||||||
|
ABMON_6 = 38
|
||||||
|
ABMON_7 = 39
|
||||||
|
ABMON_8 = 40
|
||||||
|
ABMON_9 = 41
|
||||||
|
ALTMON_1 = 58
|
||||||
|
ALTMON_10 = 67
|
||||||
|
ALTMON_11 = 68
|
||||||
|
ALTMON_12 = 69
|
||||||
|
ALTMON_2 = 59
|
||||||
|
ALTMON_3 = 60
|
||||||
|
ALTMON_4 = 61
|
||||||
|
ALTMON_5 = 62
|
||||||
|
ALTMON_6 = 63
|
||||||
|
ALTMON_7 = 64
|
||||||
|
ALTMON_8 = 65
|
||||||
|
ALTMON_9 = 66
|
||||||
|
ALT_DIGITS = 49
|
||||||
|
AM_STR = 5
|
||||||
|
CODESET = 0
|
||||||
|
CRNCYSTR = 56
|
||||||
|
DAY_1 = 7
|
||||||
|
DAY_2 = 8
|
||||||
|
DAY_3 = 9
|
||||||
|
DAY_4 = 10
|
||||||
|
DAY_5 = 11
|
||||||
|
DAY_6 = 12
|
||||||
|
DAY_7 = 13
|
||||||
|
D_FMT = 2
|
||||||
|
D_MD_ORDER = 57
|
||||||
|
D_T_FMT = 1
|
||||||
|
ERA = 45
|
||||||
|
ERA_D_FMT = 46
|
||||||
|
ERA_D_T_FMT = 47
|
||||||
|
ERA_T_FMT = 48
|
||||||
|
MON_1 = 21
|
||||||
|
MON_10 = 30
|
||||||
|
MON_11 = 31
|
||||||
|
MON_12 = 32
|
||||||
|
MON_2 = 22
|
||||||
|
MON_3 = 23
|
||||||
|
MON_4 = 24
|
||||||
|
MON_5 = 25
|
||||||
|
MON_6 = 26
|
||||||
|
MON_7 = 27
|
||||||
|
MON_8 = 28
|
||||||
|
MON_9 = 29
|
||||||
|
NOEXPR = 53
|
||||||
|
NOSTR = 55
|
||||||
|
PM_STR = 6
|
||||||
|
RADIXCHAR = 50
|
||||||
|
THOUSEP = 51
|
||||||
|
T_FMT = 3
|
||||||
|
T_FMT_AMPM = 4
|
||||||
|
YESEXPR = 52
|
||||||
|
YESSTR = 54
|
||||||
|
X_FILE_OFFSET_BITS = 64
|
||||||
|
X_LANGINFO_H_ = 0
|
||||||
|
X_LOCALE_T_DEFINED = 0
|
||||||
|
X_LP64 = 1
|
||||||
|
X_MACHINE__LIMITS_H_ = 0
|
||||||
|
X_MACHINE__TYPES_H_ = 0
|
||||||
|
X_NL_ITEM_DECLARED = 0
|
||||||
|
X_Nonnull = 0
|
||||||
|
X_Null_unspecified = 0
|
||||||
|
X_Nullable = 0
|
||||||
|
X_SYS_CDEFS_H_ = 0
|
||||||
|
X_SYS__TYPES_H_ = 0
|
||||||
|
X_XLOCALE_LANGINFO_H = 0
|
||||||
|
Unix = 1
|
||||||
|
)
|
||||||
|
|
||||||
|
type Ptrdiff_t = int64 /* <builtin>:3:26 */
|
||||||
|
|
||||||
|
type Size_t = uint64 /* <builtin>:9:23 */
|
||||||
|
|
||||||
|
type Wchar_t = int32 /* <builtin>:15:24 */
|
||||||
|
|
||||||
|
type X__int128_t = struct {
|
||||||
|
Flo int64
|
||||||
|
Fhi int64
|
||||||
|
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
|
||||||
|
type X__uint128_t = struct {
|
||||||
|
Flo uint64
|
||||||
|
Fhi uint64
|
||||||
|
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
|
||||||
|
|
||||||
|
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
|
||||||
|
type X__float128 = float64 /* <builtin>:47:21 */
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
//
|
||||||
|
// Copyright (c) 2001 Alexey Zelkin <phantom@FreeBSD.org>
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||||
|
//
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// Testing against Clang-specific extensions.
|
||||||
|
|
||||||
|
// This code has been put in place to help reduce the addition of
|
||||||
|
// compiler specific defines in FreeBSD code. It helps to aid in
|
||||||
|
// having a compiler-agnostic source tree.
|
||||||
|
|
||||||
|
// Compiler memory barriers, specific to gcc and clang.
|
||||||
|
|
||||||
|
// XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
|
||||||
|
|
||||||
|
// Macro to test if we're using a specific version of gcc or later.
|
||||||
|
|
||||||
|
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
|
||||||
|
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
|
||||||
|
// The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
|
||||||
|
// mode -- there must be no spaces between its arguments, and for nested
|
||||||
|
// __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also
|
||||||
|
// concatenate double-quoted strings produced by the __STRING macro, but
|
||||||
|
// this only works with ANSI C.
|
||||||
|
//
|
||||||
|
// __XSTRING is like __STRING, but it expands any macros in its argument
|
||||||
|
// first. It is only available with ANSI C.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to help declare dead (non-returning) and
|
||||||
|
// pure (no side effects) functions, and unused variables. They are
|
||||||
|
// null except for versions of gcc that are known to support the features
|
||||||
|
// properly (old versions of gcc-2 supported the dead and pure features
|
||||||
|
// in a different (wrong) way). If we do not provide an implementation
|
||||||
|
// for a given compiler, let the compile fail if it is told to use
|
||||||
|
// a feature that we cannot live without.
|
||||||
|
|
||||||
|
// Keywords added in C11.
|
||||||
|
|
||||||
|
// Emulation of C11 _Generic(). Unlike the previously defined C11
|
||||||
|
// keywords, it is not possible to implement this using exactly the same
|
||||||
|
// syntax. Therefore implement something similar under the name
|
||||||
|
// __generic(). Unlike _Generic(), this macro can only distinguish
|
||||||
|
// between a single type, so it requires nested invocations to
|
||||||
|
// distinguish multiple cases.
|
||||||
|
|
||||||
|
// C99 Static array indices in function parameter declarations. Syntax such as:
|
||||||
|
// void bar(int myArray[static 10]);
|
||||||
|
// is allowed in C99 but not in C++. Define __min_size appropriately so
|
||||||
|
// headers using it can be compiled in either language. Use like this:
|
||||||
|
// void bar(int myArray[__min_size(10)]);
|
||||||
|
|
||||||
|
// XXX: should use `#if __STDC_VERSION__ < 199901'.
|
||||||
|
|
||||||
|
// C++11 exposes a load of C99 stuff
|
||||||
|
|
||||||
|
// GCC 2.95 provides `__restrict' as an extension to C90 to support the
|
||||||
|
// C99-specific `restrict' type qualifier. We happen to use `__restrict' as
|
||||||
|
// a way to define the `restrict' type qualifier without disturbing older
|
||||||
|
// software that is unaware of C99 keywords.
|
||||||
|
|
||||||
|
// GNU C version 2.96 adds explicit branch prediction so that
|
||||||
|
// the CPU back-end can hint the processor and also so that
|
||||||
|
// code blocks can be reordered such that the predicted path
|
||||||
|
// sees a more linear flow, thus improving cache behavior, etc.
|
||||||
|
//
|
||||||
|
// The following two macros provide us with a way to utilize this
|
||||||
|
// compiler feature. Use __predict_true() if you expect the expression
|
||||||
|
// to evaluate to true, and __predict_false() if you expect the
|
||||||
|
// expression to evaluate to false.
|
||||||
|
//
|
||||||
|
// A few notes about usage:
|
||||||
|
//
|
||||||
|
// * Generally, __predict_false() error condition checks (unless
|
||||||
|
// you have some _strong_ reason to do otherwise, in which case
|
||||||
|
// document it), and/or __predict_true() `no-error' condition
|
||||||
|
// checks, assuming you want to optimize for the no-error case.
|
||||||
|
//
|
||||||
|
// * Other than that, if you don't know the likelihood of a test
|
||||||
|
// succeeding from empirical or other `hard' evidence, don't
|
||||||
|
// make predictions.
|
||||||
|
//
|
||||||
|
// * These are meant to be used in places that are run `a lot'.
|
||||||
|
// It is wasteful to make predictions in code that is run
|
||||||
|
// seldomly (e.g. at subsystem initialization time) as the
|
||||||
|
// basic block reordering that this affects can often generate
|
||||||
|
// larger code.
|
||||||
|
|
||||||
|
// We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
|
||||||
|
// require it.
|
||||||
|
|
||||||
|
// Given the pointer x to the member m of the struct s, return
|
||||||
|
// a pointer to the containing structure. When using GCC, we first
|
||||||
|
// assign pointer x to a local variable, to check that its type is
|
||||||
|
// compatible with member m.
|
||||||
|
|
||||||
|
// Compiler-dependent macros to declare that functions take printf-like
|
||||||
|
// or scanf-like arguments. They are null except for versions of gcc
|
||||||
|
// that are known to support the features properly (old versions of gcc-2
|
||||||
|
// didn't permit keeping the keywords out of the application namespace).
|
||||||
|
|
||||||
|
// Compiler-dependent macros that rely on FreeBSD-specific extensions.
|
||||||
|
|
||||||
|
// Embed the rcs id of a source file in the resulting library. Note that in
|
||||||
|
// more recent ELF binutils, we use .ident allowing the ID to be stripped.
|
||||||
|
// Usage:
|
||||||
|
// __FBSDID("$FreeBSD$");
|
||||||
|
|
||||||
|
// -
|
||||||
|
// The following definitions are an extension of the behavior originally
|
||||||
|
// implemented in <sys/_posix.h>, but with a different level of granularity.
|
||||||
|
// POSIX.1 requires that the macros we test be defined before any standard
|
||||||
|
// header file is included.
|
||||||
|
//
|
||||||
|
// Here's a quick run-down of the versions:
|
||||||
|
// defined(_POSIX_SOURCE) 1003.1-1988
|
||||||
|
// _POSIX_C_SOURCE == 1 1003.1-1990
|
||||||
|
// _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option
|
||||||
|
// _POSIX_C_SOURCE == 199309 1003.1b-1993
|
||||||
|
// _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995,
|
||||||
|
// and the omnibus ISO/IEC 9945-1: 1996
|
||||||
|
// _POSIX_C_SOURCE == 200112 1003.1-2001
|
||||||
|
// _POSIX_C_SOURCE == 200809 1003.1-2008
|
||||||
|
//
|
||||||
|
// In addition, the X/Open Portability Guide, which is now the Single UNIX
|
||||||
|
// Specification, defines a feature-test macro which indicates the version of
|
||||||
|
// that specification, and which subsumes _POSIX_C_SOURCE.
|
||||||
|
//
|
||||||
|
// Our macros begin with two underscores to avoid namespace screwage.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
|
||||||
|
|
||||||
|
// Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
|
||||||
|
|
||||||
|
// Deal with various X/Open Portability Guides and Single UNIX Spec.
|
||||||
|
|
||||||
|
// Deal with all versions of POSIX. The ordering relative to the tests above is
|
||||||
|
// important.
|
||||||
|
// -
|
||||||
|
// Deal with _ANSI_SOURCE:
|
||||||
|
// If it is defined, and no other compilation environment is explicitly
|
||||||
|
// requested, then define our internal feature-test macros to zero. This
|
||||||
|
// makes no difference to the preprocessor (undefined symbols in preprocessing
|
||||||
|
// expressions are defined to have value zero), but makes it more convenient for
|
||||||
|
// a test program to print out the values.
|
||||||
|
//
|
||||||
|
// If a program mistakenly defines _ANSI_SOURCE and some other macro such as
|
||||||
|
// _POSIX_C_SOURCE, we will assume that it wants the broader compilation
|
||||||
|
// environment (and in fact we will never get here).
|
||||||
|
|
||||||
|
// User override __EXT1_VISIBLE
|
||||||
|
|
||||||
|
// Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
|
||||||
|
// translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
|
||||||
|
|
||||||
|
// Nullability qualifiers: currently only supported by Clang.
|
||||||
|
|
||||||
|
// Type Safety Checking
|
||||||
|
//
|
||||||
|
// Clang provides additional attributes to enable checking type safety
|
||||||
|
// properties that cannot be enforced by the C type system.
|
||||||
|
|
||||||
|
// Lock annotations.
|
||||||
|
//
|
||||||
|
// Clang provides support for doing basic thread-safety tests at
|
||||||
|
// compile-time, by marking which locks will/should be held when
|
||||||
|
// entering/leaving a functions.
|
||||||
|
//
|
||||||
|
// Furthermore, it is also possible to annotate variables and structure
|
||||||
|
// members to enforce that they are only accessed when certain locks are
|
||||||
|
// held.
|
||||||
|
|
||||||
|
// Structure implements a lock.
|
||||||
|
|
||||||
|
// Function acquires an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function attempts to acquire an exclusive or shared lock.
|
||||||
|
|
||||||
|
// Function releases a lock.
|
||||||
|
|
||||||
|
// Function asserts that an exclusive or shared lock is held.
|
||||||
|
|
||||||
|
// Function requires that an exclusive or shared lock is or is not held.
|
||||||
|
|
||||||
|
// Function should not be analyzed.
|
||||||
|
|
||||||
|
// Function or variable should not be sanitized, i.e. by AddressSanitizer.
|
||||||
|
// GCC has the nosanitize attribute, but as a function attribute only, and
|
||||||
|
// warns on use as a variable attribute.
|
||||||
|
|
||||||
|
// Guard variables and structure members by lock.
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||||
|
//
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1991, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// This code is derived from software contributed to Berkeley by
|
||||||
|
// Berkeley Software Design, Inc.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-4-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
|
||||||
|
// Copyright (c) 1990, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. All advertising materials mentioning features or use of this software
|
||||||
|
// must display the following acknowledgement:
|
||||||
|
// This product includes software developed by the University of
|
||||||
|
// California, Berkeley and its contributors.
|
||||||
|
// 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// From: @(#)ansi.h 8.2 (Berkeley) 1/4/94
|
||||||
|
// From: @(#)types.h 8.3 (Berkeley) 1/5/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// This file is in the public domain.
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
//
|
||||||
|
// Copyright (c) 1988, 1993
|
||||||
|
// The Regents of the University of California. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
// 3. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
||||||
|
//
|
||||||
|
// @(#)limits.h 8.3 (Berkeley) 1/4/94
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
// According to ANSI (section 2.2.4.2), the values below must be usable by
|
||||||
|
// #if preprocessing directives. Additionally, the expression must have the
|
||||||
|
// same type as would an expression that is an object of the corresponding
|
||||||
|
// type converted according to the integral promotions. The subtraction for
|
||||||
|
// INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
|
||||||
|
// unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
|
||||||
|
|
||||||
|
// max value for an unsigned long long
|
||||||
|
|
||||||
|
// Quads and longs are the same on the amd64. Ensure they stay in sync.
|
||||||
|
|
||||||
|
// Minimum signal stack size.
|
||||||
|
|
||||||
|
// Basic types upon which most other types are built.
|
||||||
|
type X__int8_t = int8 /* _types.h:55:22 */
|
||||||
|
type X__uint8_t = uint8 /* _types.h:56:24 */
|
||||||
|
type X__int16_t = int16 /* _types.h:57:17 */
|
||||||
|
type X__uint16_t = uint16 /* _types.h:58:25 */
|
||||||
|
type X__int32_t = int32 /* _types.h:59:15 */
|
||||||
|
type X__uint32_t = uint32 /* _types.h:60:23 */
|
||||||
|
type X__int64_t = int64 /* _types.h:62:16 */
|
||||||
|
type X__uint64_t = uint64 /* _types.h:63:24 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__clock_t = X__int32_t /* _types.h:75:19 */ // clock()...
|
||||||
|
type X__critical_t = X__int64_t /* _types.h:76:19 */
|
||||||
|
type X__double_t = float64 /* _types.h:78:17 */
|
||||||
|
type X__float_t = float32 /* _types.h:79:16 */
|
||||||
|
type X__intfptr_t = X__int64_t /* _types.h:81:19 */
|
||||||
|
type X__intptr_t = X__int64_t /* _types.h:82:19 */
|
||||||
|
type X__intmax_t = X__int64_t /* _types.h:93:19 */
|
||||||
|
type X__int_fast8_t = X__int32_t /* _types.h:94:19 */
|
||||||
|
type X__int_fast16_t = X__int32_t /* _types.h:95:19 */
|
||||||
|
type X__int_fast32_t = X__int32_t /* _types.h:96:19 */
|
||||||
|
type X__int_fast64_t = X__int64_t /* _types.h:97:19 */
|
||||||
|
type X__int_least8_t = X__int8_t /* _types.h:98:18 */
|
||||||
|
type X__int_least16_t = X__int16_t /* _types.h:99:19 */
|
||||||
|
type X__int_least32_t = X__int32_t /* _types.h:100:19 */
|
||||||
|
type X__int_least64_t = X__int64_t /* _types.h:101:19 */
|
||||||
|
type X__ptrdiff_t = X__int64_t /* _types.h:103:19 */ // ptr1 - ptr2
|
||||||
|
type X__register_t = X__int64_t /* _types.h:104:19 */
|
||||||
|
type X__segsz_t = X__int64_t /* _types.h:105:19 */ // segment size (in pages)
|
||||||
|
type X__size_t = X__uint64_t /* _types.h:106:20 */ // sizeof()
|
||||||
|
type X__ssize_t = X__int64_t /* _types.h:107:19 */ // byte count or error
|
||||||
|
type X__time_t = X__int64_t /* _types.h:108:19 */ // time()...
|
||||||
|
type X__uintfptr_t = X__uint64_t /* _types.h:109:20 */
|
||||||
|
type X__uintptr_t = X__uint64_t /* _types.h:110:20 */
|
||||||
|
type X__uintmax_t = X__uint64_t /* _types.h:121:20 */
|
||||||
|
type X__uint_fast8_t = X__uint32_t /* _types.h:122:20 */
|
||||||
|
type X__uint_fast16_t = X__uint32_t /* _types.h:123:20 */
|
||||||
|
type X__uint_fast32_t = X__uint32_t /* _types.h:124:20 */
|
||||||
|
type X__uint_fast64_t = X__uint64_t /* _types.h:125:20 */
|
||||||
|
type X__uint_least8_t = X__uint8_t /* _types.h:126:19 */
|
||||||
|
type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
|
||||||
|
type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
|
||||||
|
type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
|
||||||
|
type X__u_register_t = X__uint64_t /* _types.h:131:20 */
|
||||||
|
type X__vm_offset_t = X__uint64_t /* _types.h:132:20 */
|
||||||
|
type X__vm_paddr_t = X__uint64_t /* _types.h:133:20 */
|
||||||
|
type X__vm_size_t = X__uint64_t /* _types.h:134:20 */
|
||||||
|
type X___wchar_t = int32 /* _types.h:141:14 */
|
||||||
|
|
||||||
|
// Standard type definitions.
|
||||||
|
type X__blksize_t = X__int32_t /* _types.h:40:19 */ // file block size
|
||||||
|
type X__blkcnt_t = X__int64_t /* _types.h:41:19 */ // file block count
|
||||||
|
type X__clockid_t = X__int32_t /* _types.h:42:19 */ // clock_gettime()...
|
||||||
|
type X__fflags_t = X__uint32_t /* _types.h:43:20 */ // file flags
|
||||||
|
type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
|
||||||
|
type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
|
||||||
|
type X__gid_t = X__uint32_t /* _types.h:46:20 */
|
||||||
|
type X__id_t = X__int64_t /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
|
||||||
|
type X__ino_t = X__uint64_t /* _types.h:48:20 */ // inode number
|
||||||
|
type X__key_t = int64 /* _types.h:49:15 */ // IPC key (for Sys V IPC)
|
||||||
|
type X__lwpid_t = X__int32_t /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
|
||||||
|
type X__mode_t = X__uint16_t /* _types.h:51:20 */ // permissions
|
||||||
|
type X__accmode_t = int32 /* _types.h:52:14 */ // access permissions
|
||||||
|
type X__nl_item = int32 /* _types.h:53:14 */
|
||||||
|
type X__nlink_t = X__uint64_t /* _types.h:54:20 */ // link count
|
||||||
|
type X__off_t = X__int64_t /* _types.h:55:19 */ // file offset
|
||||||
|
type X__off64_t = X__int64_t /* _types.h:56:19 */ // file offset (alias)
|
||||||
|
type X__pid_t = X__int32_t /* _types.h:57:19 */ // process [group]
|
||||||
|
type X__rlim_t = X__int64_t /* _types.h:58:19 */ // resource limit - intentionally
|
||||||
|
// signed, because of legacy code
|
||||||
|
// that uses -1 for RLIM_INFINITY
|
||||||
|
type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
|
||||||
|
type X__socklen_t = X__uint32_t /* _types.h:62:20 */
|
||||||
|
type X__suseconds_t = int64 /* _types.h:63:15 */ // microseconds (signed)
|
||||||
|
type X__timer_t = uintptr /* _types.h:64:24 */ // timer_gettime()...
|
||||||
|
type X__mqd_t = uintptr /* _types.h:65:21 */ // mq_open()...
|
||||||
|
type X__uid_t = X__uint32_t /* _types.h:66:20 */
|
||||||
|
type X__useconds_t = uint32 /* _types.h:67:22 */ // microseconds (unsigned)
|
||||||
|
type X__cpuwhich_t = int32 /* _types.h:68:14 */ // which parameter for cpuset.
|
||||||
|
type X__cpulevel_t = int32 /* _types.h:69:14 */ // level parameter for cpuset.
|
||||||
|
type X__cpusetid_t = int32 /* _types.h:70:14 */ // cpuset identifier.
|
||||||
|
type X__daddr_t = X__int64_t /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
|
||||||
|
|
||||||
|
// Unusual type definitions.
|
||||||
|
// rune_t is declared to be an ``int'' instead of the more natural
|
||||||
|
// ``unsigned long'' or ``long''. Two things are happening here. It is not
|
||||||
|
// unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
|
||||||
|
// it looks like 10646 will be a 31 bit standard. This means that if your
|
||||||
|
// ints cannot hold 32 bits, you will be in trouble. The reason an int was
|
||||||
|
// chosen over a long is that the is*() and to*() routines take ints (says
|
||||||
|
// ANSI C), but they use __ct_rune_t instead of int.
|
||||||
|
//
|
||||||
|
// NOTE: rune_t is not covered by ANSI nor other standards, and should not
|
||||||
|
// be instantiated outside of lib/libc/locale. Use wchar_t. wint_t and
|
||||||
|
// rune_t must be the same type. Also, wint_t should be able to hold all
|
||||||
|
// members of the largest character set plus one extra value (WEOF), and
|
||||||
|
// must be at least 16 bits.
|
||||||
|
type X__ct_rune_t = int32 /* _types.h:91:14 */ // arg type for ctype funcs
|
||||||
|
type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
|
||||||
|
type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
|
||||||
|
|
||||||
|
// Clang already provides these types as built-ins, but only in C++ mode.
|
||||||
|
type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
|
||||||
|
type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
|
||||||
|
// In C++11, char16_t and char32_t are built-in types.
|
||||||
|
|
||||||
|
type X__max_align_t = struct {
|
||||||
|
F__max_align1 int64
|
||||||
|
F__max_align2 float64
|
||||||
|
} /* _types.h:111:3 */
|
||||||
|
|
||||||
|
type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
|
||||||
|
|
||||||
|
type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
|
||||||
|
|
||||||
|
// mbstate_t is an opaque object to keep conversion state during multibyte
|
||||||
|
// stream conversions.
|
||||||
|
type X__mbstate_t = struct {
|
||||||
|
_ [0]uint64
|
||||||
|
F__mbstate8 [128]int8
|
||||||
|
} /* _types.h:124:3 */
|
||||||
|
|
||||||
|
type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
|
||||||
|
|
||||||
|
// Types for varargs. These are all provided by builtin types these
|
||||||
|
// days, so centralize their definition.
|
||||||
|
type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
|
||||||
|
type X__gnuc_va_list = X__va_list /* _types.h:140:20 */ // compatibility w/GNU headers
|
||||||
|
|
||||||
|
// When the following macro is defined, the system uses 64-bit inode numbers.
|
||||||
|
// Programs can use this to avoid including <sys/param.h>, with its associated
|
||||||
|
// namespace pollution.
|
||||||
|
|
||||||
|
type Nl_item = X__nl_item /* langinfo.h:38:19 */
|
||||||
|
|
||||||
|
// -
|
||||||
|
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
//
|
||||||
|
// Copyright (c) 2011, 2012 The FreeBSD Foundation
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// This software was developed by David Chisnall under sponsorship from
|
||||||
|
// the FreeBSD Foundation.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// 2. 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.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||||
|
//
|
||||||
|
// $FreeBSD$
|
||||||
|
|
||||||
|
type Locale_t = uintptr /* _langinfo.h:39:25 */
|
||||||
|
|
||||||
|
var _ int8 /* gen.c:2:13: */
|
|
@ -2,6 +2,7 @@
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build 386 || arm
|
||||||
// +build 386 arm
|
// +build 386 arm
|
||||||
|
|
||||||
package libc // import "modernc.org/libc"
|
package libc // import "modernc.org/libc"
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
//go:build amd64 || arm64 || s390x
|
||||||
// +build amd64 arm64 s390x
|
// +build amd64 arm64 s390x
|
||||||
|
|
||||||
package libc // import "modernc.org/libc"
|
package libc // import "modernc.org/libc"
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,575 @@
|
||||||
|
// Copyright 2021 The Libc Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
package libc // import "modernc.org/libc"
|
||||||
|
|
||||||
|
import (
|
||||||
|
"strings"
|
||||||
|
"unsafe"
|
||||||
|
|
||||||
|
"golang.org/x/sys/unix"
|
||||||
|
"modernc.org/libc/fcntl"
|
||||||
|
"modernc.org/libc/sys/types"
|
||||||
|
"modernc.org/libc/time"
|
||||||
|
"modernc.org/libc/utime"
|
||||||
|
)
|
||||||
|
|
||||||
|
// int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);
|
||||||
|
func Xsigaction(t *TLS, signum int32, act, oldact uintptr) int32 {
|
||||||
|
if _, _, err := unix.Syscall(unix.SYS_SIGACTION, uintptr(signum), act, oldact); err != 0 {
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// FILE *fopen64(const char *pathname, const char *mode);
|
||||||
|
func Xfopen64(t *TLS, pathname, mode uintptr) uintptr {
|
||||||
|
m := strings.ReplaceAll(GoString(mode), "b", "")
|
||||||
|
var flags int
|
||||||
|
switch m {
|
||||||
|
case "r":
|
||||||
|
flags = fcntl.O_RDONLY
|
||||||
|
case "r+":
|
||||||
|
flags = fcntl.O_RDWR
|
||||||
|
case "w":
|
||||||
|
flags = fcntl.O_WRONLY | fcntl.O_CREAT | fcntl.O_TRUNC
|
||||||
|
case "w+":
|
||||||
|
flags = fcntl.O_RDWR | fcntl.O_CREAT | fcntl.O_TRUNC
|
||||||
|
case "a":
|
||||||
|
flags = fcntl.O_WRONLY | fcntl.O_CREAT | fcntl.O_APPEND
|
||||||
|
case "a+":
|
||||||
|
flags = fcntl.O_RDWR | fcntl.O_CREAT | fcntl.O_APPEND
|
||||||
|
default:
|
||||||
|
panic(m)
|
||||||
|
}
|
||||||
|
fd, err := unix.Open(GoString(pathname), int(flags), 0666)
|
||||||
|
if err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q %q: %v FAIL", origin(1), GoString(pathname), GoString(mode), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q %q: fd %v", origin(1), GoString(pathname), GoString(mode), fd)
|
||||||
|
}
|
||||||
|
if p := newFile(t, int32(fd)); p != 0 {
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
panic("OOM")
|
||||||
|
}
|
||||||
|
|
||||||
|
// int lstat(const char *pathname, struct stat *statbuf);
|
||||||
|
func Xlstat64(t *TLS, pathname, statbuf uintptr) int32 {
|
||||||
|
if err := unix.Lstat(GoString(pathname), (*unix.Stat_t)(unsafe.Pointer(statbuf))); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: %v FAIL", origin(1), GoString(pathname), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: ok", origin(1), GoString(pathname))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int stat(const char *pathname, struct stat *statbuf);
|
||||||
|
func Xstat64(t *TLS, pathname, statbuf uintptr) int32 {
|
||||||
|
if err := unix.Stat(GoString(pathname), (*unix.Stat_t)(unsafe.Pointer(statbuf))); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: %v FAIL", origin(1), GoString(pathname), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: ok", origin(1), GoString(pathname))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int mkdir(const char *path, mode_t mode);
|
||||||
|
func Xmkdir(t *TLS, path uintptr, mode types.Mode_t) int32 {
|
||||||
|
if err := unix.Mkdir(GoString(path), uint32(mode)); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: %v FAIL", origin(1), GoString(path), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: ok", origin(1), GoString(path))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int access(const char *pathname, int mode);
|
||||||
|
func Xaccess(t *TLS, pathname uintptr, mode int32) int32 {
|
||||||
|
if err := unix.Access(GoString(pathname), uint32(mode)); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q %#o: %v FAIL", origin(1), GoString(pathname), mode, err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q %#o: ok", origin(1), GoString(pathname), mode)
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int unlink(const char *pathname);
|
||||||
|
func Xunlink(t *TLS, pathname uintptr) int32 {
|
||||||
|
if err := unix.Unlink(GoString(pathname)); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q: %v", origin(1), GoString(pathname), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok", origin(1))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// ssize_t readlink(const char *restrict path, char *restrict buf, size_t bufsize);
|
||||||
|
func Xreadlink(t *TLS, path, buf uintptr, bufsize types.Size_t) types.Ssize_t {
|
||||||
|
var n int
|
||||||
|
var err error
|
||||||
|
switch {
|
||||||
|
case buf == 0 || bufsize == 0:
|
||||||
|
n, err = unix.Readlink(GoString(path), nil)
|
||||||
|
default:
|
||||||
|
n, err = unix.Readlink(GoString(path), (*RawMem)(unsafe.Pointer(buf))[:bufsize:bufsize])
|
||||||
|
}
|
||||||
|
if err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %v FAIL", err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok")
|
||||||
|
}
|
||||||
|
return types.Ssize_t(n)
|
||||||
|
}
|
||||||
|
|
||||||
|
// int symlink(const char *target, const char *linkpath);
|
||||||
|
func Xsymlink(t *TLS, target, linkpath uintptr) int32 {
|
||||||
|
if err := unix.Symlink(GoString(target), GoString(linkpath)); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %v FAIL", origin(1), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok", origin(1))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int chmod(const char *pathname, mode_t mode)
|
||||||
|
func Xchmod(t *TLS, pathname uintptr, mode types.Mode_t) int32 {
|
||||||
|
if err := unix.Chmod(GoString(pathname), uint32(mode)); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q %#o: %v FAIL", origin(1), GoString(pathname), mode, err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %q %#o: ok", origin(1), GoString(pathname), mode)
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// time_t time(time_t *tloc);
|
||||||
|
func Xtime(t *TLS, tloc uintptr) time.Time_t {
|
||||||
|
panic(todo(""))
|
||||||
|
// n := time.Now().UTC().Unix()
|
||||||
|
// if tloc != 0 {
|
||||||
|
// *(*types.Time_t)(unsafe.Pointer(tloc)) = types.Time_t(n)
|
||||||
|
// }
|
||||||
|
// return types.Time_t(n)
|
||||||
|
}
|
||||||
|
|
||||||
|
// int utimes(const char *filename, const struct timeval times[2]);
|
||||||
|
func Xutimes(t *TLS, filename, times uintptr) int32 {
|
||||||
|
var a []unix.Timeval
|
||||||
|
if times != 0 {
|
||||||
|
a = make([]unix.Timeval, 2)
|
||||||
|
a[0] = *(*unix.Timeval)(unsafe.Pointer(times))
|
||||||
|
a[1] = *(*unix.Timeval)(unsafe.Pointer(times + unsafe.Sizeof(unix.Timeval{})))
|
||||||
|
}
|
||||||
|
if err := unix.Utimes(GoString(filename), a); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %v FAIL", origin(1), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok", origin(1))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int fstat(int fd, struct stat *statbuf);
|
||||||
|
func Xfstat64(t *TLS, fd int32, statbuf uintptr) int32 {
|
||||||
|
if err := unix.Fstat(int(fd), (*unix.Stat_t)(unsafe.Pointer(statbuf))); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: fd %d: %v FAIL", origin(1), fd, err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: fd %d: ok", origin(1), fd)
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// off64_t lseek64(int fd, off64_t offset, int whence);
|
||||||
|
func Xlseek64(t *TLS, fd int32, offset types.Off_t, whence int32) types.Off_t {
|
||||||
|
n, err := unix.Seek(int(fd), int64(offset), int(whence))
|
||||||
|
if err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %v FAIL", origin(1), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok", origin(1))
|
||||||
|
}
|
||||||
|
return types.Off_t(n)
|
||||||
|
}
|
||||||
|
|
||||||
|
func Xfcntl64(t *TLS, fd, cmd int32, args uintptr) int32 {
|
||||||
|
var arg uintptr
|
||||||
|
if args != 0 {
|
||||||
|
arg = *(*uintptr)(unsafe.Pointer(args))
|
||||||
|
}
|
||||||
|
n, _, err := unix.Syscall(unix.SYS_FCNTL, uintptr(fd), uintptr(cmd), arg)
|
||||||
|
if err != 0 {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: fd %v cmd %v", origin(1), fcntlCmdStr(fd), cmd)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %d %s %#x: %d", origin(1), fd, fcntlCmdStr(cmd), arg, n)
|
||||||
|
}
|
||||||
|
return int32(n)
|
||||||
|
}
|
||||||
|
|
||||||
|
// int rename(const char *oldpath, const char *newpath);
|
||||||
|
func Xrename(t *TLS, oldpath, newpath uintptr) int32 {
|
||||||
|
if err := unix.Rename(GoString(oldpath), GoString(newpath)); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %v FAIL", origin(1), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok", origin(1))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int mknod(const char *pathname, mode_t mode, dev_t dev);
|
||||||
|
func Xmknod(t *TLS, pathname uintptr, mode types.Mode_t, dev types.Dev_t) int32 {
|
||||||
|
panic(todo(""))
|
||||||
|
// if _, _, err := unix.Syscall(unix.SYS_MKNOD, pathname, uintptr(mode), uintptr(dev)); err != 0 {
|
||||||
|
// t.setErrno(err)
|
||||||
|
// return -1
|
||||||
|
// }
|
||||||
|
|
||||||
|
// return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int utime(const char *filename, const struct utimbuf *times);
|
||||||
|
func Xutime(t *TLS, filename, times uintptr) int32 {
|
||||||
|
var a []unix.Timeval
|
||||||
|
if times != 0 {
|
||||||
|
a = make([]unix.Timeval, 2)
|
||||||
|
a[0].Sec = (*utime.Utimbuf)(unsafe.Pointer(times)).Factime
|
||||||
|
a[1].Sec = (*utime.Utimbuf)(unsafe.Pointer(times)).Fmodtime
|
||||||
|
}
|
||||||
|
if err := unix.Utimes(GoString(filename), a); err != nil {
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: %v FAIL", origin(1), err)
|
||||||
|
}
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
if dmesgs {
|
||||||
|
dmesg("%v: ok", origin(1))
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int chown(const char *pathname, uid_t owner, gid_t group);
|
||||||
|
func Xchown(t *TLS, pathname uintptr, owner types.Uid_t, group types.Gid_t) int32 {
|
||||||
|
panic(todo(""))
|
||||||
|
// if _, _, err := unix.Syscall(unix.SYS_CHOWN, pathname, uintptr(owner), uintptr(group)); err != 0 {
|
||||||
|
// t.setErrno(err)
|
||||||
|
// return -1
|
||||||
|
// }
|
||||||
|
|
||||||
|
// return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int link(const char *oldpath, const char *newpath);
|
||||||
|
func Xlink(t *TLS, oldpath, newpath uintptr) int32 {
|
||||||
|
panic(todo(""))
|
||||||
|
// if _, _, err := unix.Syscall(unix.SYS_LINK, oldpath, newpath, 0); err != 0 {
|
||||||
|
// t.setErrno(err)
|
||||||
|
// return -1
|
||||||
|
// }
|
||||||
|
|
||||||
|
// return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int dup2(int oldfd, int newfd);
|
||||||
|
func Xdup2(t *TLS, oldfd, newfd int32) int32 {
|
||||||
|
panic(todo(""))
|
||||||
|
// n, _, err := unix.Syscall(unix.SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
|
||||||
|
// if err != 0 {
|
||||||
|
// t.setErrno(err)
|
||||||
|
// return -1
|
||||||
|
// }
|
||||||
|
|
||||||
|
// return int32(n)
|
||||||
|
}
|
||||||
|
|
||||||
|
// unsigned int alarm(unsigned int seconds);
|
||||||
|
func Xalarm(t *TLS, seconds uint32) uint32 {
|
||||||
|
panic(todo(""))
|
||||||
|
// n, _, err := unix.Syscall(unix.SYS_ALARM, uintptr(seconds), 0, 0)
|
||||||
|
// if err != 0 {
|
||||||
|
// panic(todo(""))
|
||||||
|
// }
|
||||||
|
|
||||||
|
// return uint32(n)
|
||||||
|
}
|
||||||
|
|
||||||
|
func Xgetnameinfo(tls *TLS, sa1 uintptr, sl socklen_t, node uintptr, nodelen size_t, serv uintptr, servlen size_t, flags int32) int32 { /* getnameinfo.c:125:5: */
|
||||||
|
panic(todo(""))
|
||||||
|
//TODO bp := tls.Alloc(347)
|
||||||
|
//TODO defer tls.Free(347)
|
||||||
|
|
||||||
|
//TODO // var ptr [78]int8 at bp, 78
|
||||||
|
|
||||||
|
//TODO // var buf [256]int8 at bp+78, 256
|
||||||
|
|
||||||
|
//TODO // var num [13]int8 at bp+334, 13
|
||||||
|
|
||||||
|
//TODO var af int32 = int32((*sockaddr)(unsafe.Pointer(sa1)).sa_family)
|
||||||
|
//TODO var a uintptr
|
||||||
|
//TODO var scopeid uint32
|
||||||
|
|
||||||
|
//TODO switch af {
|
||||||
|
//TODO case 2:
|
||||||
|
//TODO a = (sa1 + 4 /* &.sin_addr */)
|
||||||
|
//TODO if (uint64(sl) < uint64(unsafe.Sizeof(sockaddr_in{}))) {
|
||||||
|
//TODO return -6
|
||||||
|
//TODO }
|
||||||
|
//TODO mkptr4(tls, bp /* &ptr[0] */, a)
|
||||||
|
//TODO scopeid = uint32(0)
|
||||||
|
//TODO break
|
||||||
|
//TODO case 10:
|
||||||
|
//TODO a = (sa1 + 8 /* &.sin6_addr */)
|
||||||
|
//TODO if (uint64(sl) < uint64(unsafe.Sizeof(sockaddr_in6{}))) {
|
||||||
|
//TODO return -6
|
||||||
|
//TODO }
|
||||||
|
//TODO if Xmemcmp(tls, a, ts+88 /* "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff" */, uint64(12)) != 0 {
|
||||||
|
//TODO mkptr6(tls, bp /* &ptr[0] */, a)
|
||||||
|
//TODO } else {
|
||||||
|
//TODO mkptr4(tls, bp /* &ptr[0] */, (a + uintptr(12)))
|
||||||
|
//TODO }
|
||||||
|
//TODO scopeid = (*sockaddr_in6)(unsafe.Pointer(sa1)).sin6_scope_id
|
||||||
|
//TODO break
|
||||||
|
//TODO default:
|
||||||
|
//TODO return -6
|
||||||
|
//TODO }
|
||||||
|
|
||||||
|
//TODO if (node != 0) && (nodelen != 0) {
|
||||||
|
//TODO *(*int8)(unsafe.Pointer(bp + 78 /* &buf[0] */)) = int8(0)
|
||||||
|
//TODO if !((flags & 0x01) != 0) {
|
||||||
|
//TODO reverse_hosts(tls, bp+78 /* &buf[0] */, a, scopeid, af)
|
||||||
|
//TODO }
|
||||||
|
//TODO if !(int32(*(*int8)(unsafe.Pointer(bp + 78 /* buf */))) != 0) && !((flags & 0x01) != 0) {
|
||||||
|
//TODO Xabort(tls) //TODO-
|
||||||
|
//TODO // unsigned char query[18+PTR_MAX], reply[512];
|
||||||
|
//TODO // int qlen = __res_mkquery(0, ptr, 1, RR_PTR,
|
||||||
|
//TODO // 0, 0, 0, query, sizeof query);
|
||||||
|
//TODO // query[3] = 0; /* don't need AD flag */
|
||||||
|
//TODO // int rlen = __res_send(query, qlen, reply, sizeof reply);
|
||||||
|
//TODO // buf[0] = 0;
|
||||||
|
//TODO // if (rlen > 0)
|
||||||
|
//TODO // __dns_parse(reply, rlen, dns_parse_callback, buf);
|
||||||
|
//TODO }
|
||||||
|
//TODO if !(int32(*(*int8)(unsafe.Pointer(bp + 78 /* buf */))) != 0) {
|
||||||
|
//TODO if (flags & 0x08) != 0 {
|
||||||
|
//TODO return -2
|
||||||
|
//TODO }
|
||||||
|
//TODO Xinet_ntop(tls, af, a, bp+78 /* &buf[0] */, uint32(unsafe.Sizeof([256]int8{})))
|
||||||
|
//TODO if scopeid != 0 {
|
||||||
|
//TODO Xabort(tls) //TODO-
|
||||||
|
//TODO // char *p = 0, tmp[IF_NAMESIZE+1];
|
||||||
|
//TODO // if (!(flags & NI_NUMERICSCOPE) &&
|
||||||
|
//TODO // (IN6_IS_ADDR_LINKLOCAL(a) ||
|
||||||
|
//TODO // IN6_IS_ADDR_MC_LINKLOCAL(a)))
|
||||||
|
//TODO // p = if_indextoname(scopeid, tmp+1);
|
||||||
|
//TODO // if (!p)
|
||||||
|
//TODO // p = itoa(num, scopeid);
|
||||||
|
//TODO // *--p = '%';
|
||||||
|
//TODO // strcat(buf, p);
|
||||||
|
//TODO }
|
||||||
|
//TODO }
|
||||||
|
//TODO if Xstrlen(tls, bp+78 /* &buf[0] */) >= size_t(nodelen) {
|
||||||
|
//TODO return -12
|
||||||
|
//TODO }
|
||||||
|
//TODO Xstrcpy(tls, node, bp+78 /* &buf[0] */)
|
||||||
|
//TODO }
|
||||||
|
|
||||||
|
//TODO if (serv != 0) && (servlen != 0) {
|
||||||
|
//TODO var p uintptr = bp + 78 /* buf */
|
||||||
|
//TODO var port int32 = int32(Xntohs(tls, (*sockaddr_in)(unsafe.Pointer(sa1)).sin_port))
|
||||||
|
//TODO *(*int8)(unsafe.Pointer(bp + 78 /* &buf[0] */)) = int8(0)
|
||||||
|
//TODO if !((flags & 0x02) != 0) {
|
||||||
|
//TODO reverse_services(tls, bp+78 /* &buf[0] */, port, (flags & 0x10))
|
||||||
|
//TODO }
|
||||||
|
//TODO if !(int32(*(*int8)(unsafe.Pointer(p))) != 0) {
|
||||||
|
//TODO p = itoa(tls, bp+334 /* &num[0] */, uint32(port))
|
||||||
|
//TODO }
|
||||||
|
//TODO if Xstrlen(tls, p) >= size_t(servlen) {
|
||||||
|
//TODO return -12
|
||||||
|
//TODO }
|
||||||
|
//TODO Xstrcpy(tls, serv, p)
|
||||||
|
//TODO }
|
||||||
|
|
||||||
|
//TODO return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
func Xgethostbyaddr_r(tls *TLS, a uintptr, l socklen_t, af int32, h uintptr, buf uintptr, buflen size_t, res uintptr, err uintptr) int32 { /* gethostbyaddr_r.c:10:5: */
|
||||||
|
panic(todo(""))
|
||||||
|
//TODO bp := tls.Alloc(28)
|
||||||
|
//TODO defer tls.Free(28)
|
||||||
|
|
||||||
|
//TODO //TODO union {
|
||||||
|
//TODO //TODO struct sockaddr_in sin;
|
||||||
|
//TODO //TODO struct sockaddr_in6 sin6;
|
||||||
|
//TODO //TODO } sa = { .sin.sin_family = af };
|
||||||
|
//TODO *(*struct {
|
||||||
|
//TODO sin sockaddr_in
|
||||||
|
//TODO _ [12]byte
|
||||||
|
//TODO })(unsafe.Pointer(bp /* sa1 */)) = struct {
|
||||||
|
//TODO sin sockaddr_in
|
||||||
|
//TODO _ [12]byte
|
||||||
|
//TODO }{} //TODO-
|
||||||
|
//TODO (*sockaddr_in)(unsafe.Pointer(bp /* &sa1 */)).sin_family = sa_family_t(af) //TODO-
|
||||||
|
//TODO var sl socklen_t
|
||||||
|
//TODO if af == 10 {
|
||||||
|
//TODO sl = uint32(unsafe.Sizeof(sockaddr_in6{}))
|
||||||
|
//TODO } else {
|
||||||
|
//TODO sl = uint32(unsafe.Sizeof(sockaddr_in{}))
|
||||||
|
//TODO }
|
||||||
|
//TODO var i int32
|
||||||
|
|
||||||
|
//TODO *(*uintptr)(unsafe.Pointer(res)) = uintptr(0)
|
||||||
|
|
||||||
|
//TODO // Load address argument into sockaddr structure
|
||||||
|
//TODO if (af == 10) && (l == socklen_t(16)) {
|
||||||
|
//TODO Xmemcpy(tls, (bp /* &sa1 */ /* &.sin6 */ + 8 /* &.sin6_addr */), a, uint64(16))
|
||||||
|
//TODO } else if (af == 2) && (l == socklen_t(4)) {
|
||||||
|
//TODO Xmemcpy(tls, (bp /* &sa1 */ /* &.sin */ + 4 /* &.sin_addr */), a, uint64(4))
|
||||||
|
//TODO } else {
|
||||||
|
//TODO *(*int32)(unsafe.Pointer(err)) = 3
|
||||||
|
//TODO return 22
|
||||||
|
//TODO }
|
||||||
|
|
||||||
|
//TODO // Align buffer and check for space for pointers and ip address
|
||||||
|
//TODO i = (int32(uintptr_t(buf) & (uint64(unsafe.Sizeof(uintptr(0))) - uint64(1))))
|
||||||
|
//TODO if !(i != 0) {
|
||||||
|
//TODO i = int32(unsafe.Sizeof(uintptr(0)))
|
||||||
|
//TODO }
|
||||||
|
//TODO if buflen <= (((uint64(5) * uint64(unsafe.Sizeof(uintptr(0)))) - uint64(i)) + uint64(l)) {
|
||||||
|
//TODO return 34
|
||||||
|
//TODO }
|
||||||
|
//TODO buf += (uintptr(uint64(unsafe.Sizeof(uintptr(0))) - uint64(i)))
|
||||||
|
//TODO buflen = buflen - (((uint64(5) * uint64(unsafe.Sizeof(uintptr(0)))) - uint64(i)) + uint64(l))
|
||||||
|
|
||||||
|
//TODO (*hostent)(unsafe.Pointer(h)).h_addr_list = buf
|
||||||
|
//TODO buf += (uintptr(uint64(2) * uint64(unsafe.Sizeof(uintptr(0)))))
|
||||||
|
//TODO (*hostent)(unsafe.Pointer(h)).h_aliases = buf
|
||||||
|
//TODO buf += (uintptr(uint64(2) * uint64(unsafe.Sizeof(uintptr(0)))))
|
||||||
|
|
||||||
|
//TODO *(*uintptr)(unsafe.Pointer((*hostent)(unsafe.Pointer(h)).h_addr_list)) = buf
|
||||||
|
//TODO Xmemcpy(tls, *(*uintptr)(unsafe.Pointer((*hostent)(unsafe.Pointer(h)).h_addr_list)), a, uint64(l))
|
||||||
|
//TODO buf += uintptr(l)
|
||||||
|
//TODO *(*uintptr)(unsafe.Pointer((*hostent)(unsafe.Pointer(h)).h_addr_list + 1*8)) = uintptr(0)
|
||||||
|
//TODO *(*uintptr)(unsafe.Pointer((*hostent)(unsafe.Pointer(h)).h_aliases)) = buf
|
||||||
|
//TODO *(*uintptr)(unsafe.Pointer((*hostent)(unsafe.Pointer(h)).h_aliases + 1*8)) = uintptr(0)
|
||||||
|
|
||||||
|
//TODO switch Xgetnameinfo(tls, bp /* &sa1 */, sl, buf, uint32(buflen), uintptr(0), uint32(0), 0) {
|
||||||
|
//TODO case -3:
|
||||||
|
//TODO *(*int32)(unsafe.Pointer(err)) = 2
|
||||||
|
//TODO return 11
|
||||||
|
//TODO case -12:
|
||||||
|
//TODO return 34
|
||||||
|
//TODO default:
|
||||||
|
//TODO fallthrough
|
||||||
|
//TODO case -10:
|
||||||
|
//TODO fallthrough
|
||||||
|
//TODO case -11:
|
||||||
|
//TODO fallthrough
|
||||||
|
//TODO case -4:
|
||||||
|
//TODO *(*int32)(unsafe.Pointer(err)) = 3
|
||||||
|
//TODO return *(*int32)(unsafe.Pointer(X___errno_location(tls)))
|
||||||
|
//TODO case 0:
|
||||||
|
//TODO break
|
||||||
|
//TODO }
|
||||||
|
|
||||||
|
//TODO (*hostent)(unsafe.Pointer(h)).h_addrtype = af
|
||||||
|
//TODO (*hostent)(unsafe.Pointer(h)).h_length = int32(l)
|
||||||
|
//TODO (*hostent)(unsafe.Pointer(h)).h_name = *(*uintptr)(unsafe.Pointer((*hostent)(unsafe.Pointer(h)).h_aliases))
|
||||||
|
//TODO *(*uintptr)(unsafe.Pointer(res)) = h
|
||||||
|
//TODO return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// int getrlimit(int resource, struct rlimit *rlim);
|
||||||
|
func Xgetrlimit64(t *TLS, resource int32, rlim uintptr) int32 {
|
||||||
|
if _, _, err := unix.Syscall(unix.SYS_GETRLIMIT, uintptr(resource), uintptr(rlim), 0); err != 0 {
|
||||||
|
t.setErrno(err)
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
|
@ -439,11 +439,11 @@ func Xmkdir(t *TLS, path uintptr, mode types.Mode_t) int32 {
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
// int sscanf(const char *str, const char *format, ...);
|
//TODO- // int sscanf(const char *str, const char *format, ...);
|
||||||
func Xsscanf(t *TLS, str, format, va uintptr) int32 {
|
//TODO- func Xsscanf(t *TLS, str, format, va uintptr) int32 {
|
||||||
r := scanf(strings.NewReader(GoString(str)), format, va)
|
//TODO- r := scanf(strings.NewReader(GoString(str)), format, va)
|
||||||
// if dmesgs {
|
//TODO- // if dmesgs {
|
||||||
// dmesg("%v: %q %q: %d", origin(1), GoString(str), GoString(format), r)
|
//TODO- // dmesg("%v: %q %q: %d", origin(1), GoString(str), GoString(format), r)
|
||||||
// }
|
//TODO- // }
|
||||||
return r
|
//TODO- return r
|
||||||
}
|
//TODO- }
|
||||||
|
|
|
@ -465,3 +465,16 @@ func Xuuid_unparse(t *TLS, uu uuid.Uuid_t, out uintptr) {
|
||||||
func Xuuid_parse(t *TLS, in uintptr, uu uuid.Uuid_t) int32 {
|
func Xuuid_parse(t *TLS, in uintptr, uu uuid.Uuid_t) int32 {
|
||||||
panic(todo(""))
|
panic(todo(""))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//TODO-
|
||||||
|
func __syscall1(t *TLS, trap, p1 long) long {
|
||||||
|
return __syscall(unix.Syscall(uintptr(trap), uintptr(p1), 0, 0))
|
||||||
|
}
|
||||||
|
|
||||||
|
func __syscall3(t *TLS, trap, p1, p2, p3 long) long {
|
||||||
|
return __syscall(unix.Syscall(uintptr(trap), uintptr(p1), uintptr(p2), uintptr(p3)))
|
||||||
|
}
|
||||||
|
|
||||||
|
func __syscall4(t *TLS, trap, p1, p2, p3, p4 long) long {
|
||||||
|
return __syscall(unix.Syscall6(uintptr(trap), uintptr(p1), uintptr(p2), uintptr(p3), uintptr(p4), 0, 0))
|
||||||
|
}
|
||||||
|
|
|
@ -2,7 +2,8 @@
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// +build linux darwin
|
//go:build linux || darwin || freebsd
|
||||||
|
// +build linux darwin freebsd
|
||||||
|
|
||||||
package libc // import "modernc.org/libc"
|
package libc // import "modernc.org/libc"
|
||||||
|
|
||||||
|
|
|
@ -226,24 +226,21 @@ func newFile(t *TLS, fd int32) uintptr {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic("no console")
|
panic("no console")
|
||||||
}
|
}
|
||||||
f := addFile(h, fd)
|
return addFile(h, fd)
|
||||||
return uintptr(unsafe.Pointer(f))
|
|
||||||
}
|
}
|
||||||
if fd == unistd.STDOUT_FILENO {
|
if fd == unistd.STDOUT_FILENO {
|
||||||
h, err := syscall.GetStdHandle(syscall.STD_OUTPUT_HANDLE)
|
h, err := syscall.GetStdHandle(syscall.STD_OUTPUT_HANDLE)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic("no console")
|
panic("no console")
|
||||||
}
|
}
|
||||||
f := addFile(h, fd)
|
return addFile(h, fd)
|
||||||
return uintptr(unsafe.Pointer(f))
|
|
||||||
}
|
}
|
||||||
if fd == unistd.STDERR_FILENO {
|
if fd == unistd.STDERR_FILENO {
|
||||||
h, err := syscall.GetStdHandle(syscall.STD_ERROR_HANDLE)
|
h, err := syscall.GetStdHandle(syscall.STD_ERROR_HANDLE)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic("no console")
|
panic("no console")
|
||||||
}
|
}
|
||||||
f := addFile(h, fd)
|
return addFile(h, fd)
|
||||||
return uintptr(unsafe.Pointer(f))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// should not get here -- unless newFile
|
// should not get here -- unless newFile
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
// Code generated by 'ccgo limits/gen.c -crt-import-path -export-defines -export-enums -export-externs X -export-fields F -export-structs -export-typedefs -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o limits/limits_freebsd_amd64.go -pkgname limits', DO NOT EDIT.
|
||||||
|
|
||||||
|
package limits
|
||||||
|
|
||||||
|
var CAPI = map[string]struct{}{}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue