]> Cypherpunks repositories - gostls13.git/commitdiff
internal/poll: add GetsockoptInt
authorMatthieu Baerts <matthieu.baerts@tessares.net>
Fri, 24 Feb 2023 16:51:59 +0000 (17:51 +0100)
committerGopher Robot <gobot@golang.org>
Tue, 18 Apr 2023 13:44:49 +0000 (13:44 +0000)
This new function wraps the getsockopt network call with an integer
argument, similar to SetsockoptInt.

This will be used in MPTCP in the following commit.

This work has been co-developed by Gregory Detal
<gregory.detal@tessares.net>.

Updates #59166

Change-Id: I8f6aa00ea2535683d9bbf436993c23e9c6ca2af3
Reviewed-on: https://go-review.googlesource.com/c/go/+/471139
Reviewed-by: Bryan Mills <bcmills@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Run-TryBot: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>

src/internal/poll/sockopt.go

index a7c9d115b4ace67395d9475bb3550d4122cae6aa..a87a9e64135a430c36c6ea13fb6ea69942fd8c11 100644 (file)
@@ -34,3 +34,12 @@ func (fd *FD) SetsockoptLinger(level, name int, l *syscall.Linger) error {
        defer fd.decref()
        return syscall.SetsockoptLinger(fd.Sysfd, level, name, l)
 }
+
+// GetsockoptInt wraps the getsockopt network call with an int argument.
+func (fd *FD) GetsockoptInt(level, name int) (int, error) {
+       if err := fd.incref(); err != nil {
+               return -1, err
+       }
+       defer fd.decref()
+       return syscall.GetsockoptInt(fd.Sysfd, level, name)
+}