Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1080)

Side by Side Diff: src/pkg/syscall/syscall_windows.go

Issue 3136042: code review 3136042: net: add ReadFrom and WriteTo windows version. (Closed)
Patch Set: code review 3136042: net: add ReadFrom and WriteTo windows version. Created 14 years, 4 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/pkg/net/fd_windows.go ('k') | src/pkg/syscall/zsyscall_windows_386.go » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2009 The Go Authors. All rights reserved. 1 // Copyright 2009 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style 2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file. 3 // license that can be found in the LICENSE file.
4 4
5 // Windows system calls. 5 // Windows system calls.
6 6
7 package syscall 7 package syscall
8 8
9 import ( 9 import (
10 "unsafe" 10 "unsafe"
(...skipping 449 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 //sys bind(s int32, name uintptr, namelen int32) (errno int) [failretval=-1] = wsock32.bind 460 //sys bind(s int32, name uintptr, namelen int32) (errno int) [failretval=-1] = wsock32.bind
461 //sys connect(s int32, name uintptr, namelen int32) (errno int) [failretval=-1 ] = wsock32.connect 461 //sys connect(s int32, name uintptr, namelen int32) (errno int) [failretval=-1 ] = wsock32.connect
462 //sys getsockname(s int32, rsa *RawSockaddrAny, addrlen *int32) (errno int) [f ailretval=-1] = wsock32.getsockname 462 //sys getsockname(s int32, rsa *RawSockaddrAny, addrlen *int32) (errno int) [f ailretval=-1] = wsock32.getsockname
463 //sys getpeername(s int32, rsa *RawSockaddrAny, addrlen *int32) (errno int) [f ailretval=-1] = wsock32.getpeername 463 //sys getpeername(s int32, rsa *RawSockaddrAny, addrlen *int32) (errno int) [f ailretval=-1] = wsock32.getpeername
464 //sys listen(s int32, backlog int32) (errno int) [failretval=-1] = wsock32.lis ten 464 //sys listen(s int32, backlog int32) (errno int) [failretval=-1] = wsock32.lis ten
465 //sys shutdown(s int32, how int32) (errno int) [failretval=-1] = wsock32.shutd own 465 //sys shutdown(s int32, how int32) (errno int) [failretval=-1] = wsock32.shutd own
466 //sys AcceptEx(ls uint32, as uint32, buf *byte, rxdatalen uint32, laddrlen uin t32, raddrlen uint32, recvd *uint32, overlapped *Overlapped) (ok bool, errno int ) = wsock32.AcceptEx 466 //sys AcceptEx(ls uint32, as uint32, buf *byte, rxdatalen uint32, laddrlen uin t32, raddrlen uint32, recvd *uint32, overlapped *Overlapped) (ok bool, errno int ) = wsock32.AcceptEx
467 //sys GetAcceptExSockaddrs(buf *byte, rxdatalen uint32, laddrlen uint32, raddr len uint32, lrsa **RawSockaddrAny, lrsalen *int32, rrsa **RawSockaddrAny, rrsale n *int32) = wsock32.GetAcceptExSockaddrs 467 //sys GetAcceptExSockaddrs(buf *byte, rxdatalen uint32, laddrlen uint32, raddr len uint32, lrsa **RawSockaddrAny, lrsalen *int32, rrsa **RawSockaddrAny, rrsale n *int32) = wsock32.GetAcceptExSockaddrs
468 //sys WSARecv(s uint32, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uin t32, overlapped *Overlapped, croutine *byte) (errno int) [failretval=-1] = ws2_3 2.WSARecv 468 //sys WSARecv(s uint32, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uin t32, overlapped *Overlapped, croutine *byte) (errno int) [failretval=-1] = ws2_3 2.WSARecv
469 //sys WSASend(s uint32, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint3 2, overlapped *Overlapped, croutine *byte) (errno int) [failretval=-1] = ws2_32. WSASend 469 //sys WSASend(s uint32, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint3 2, overlapped *Overlapped, croutine *byte) (errno int) [failretval=-1] = ws2_32. WSASend
470 //sys WSARecvFrom(s uint32, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, from *RawSockaddrAny, fromlen *int32, overlapped *Overlapped, croutine *byte) (errno int) [failretval=-1] = ws2_32.WSARecvFrom
471 //sys _WSASendTo(s uint32, bufs *WSABuf, bufcnt uint32, sent *uint32, flags ui nt32, to *RawSockaddrAny, tolen int32, overlapped *Overlapped, croutine *byte) (errno int) [failretval=-1] = ws2_32.WSASendTo
brainman 2010/11/19 05:22:00 Please, do not rename API function name if possibl
vcc 2010/11/20 03:14:58 Done.
470 //sys GetHostByName(name string) (h *Hostent, errno int) [failretval=nil] = ws 2_32.gethostbyname 472 //sys GetHostByName(name string) (h *Hostent, errno int) [failretval=nil] = ws 2_32.gethostbyname
471 //sys GetServByName(name string, proto string) (s *Servent, errno int) [failre tval=nil] = ws2_32.getservbyname 473 //sys GetServByName(name string, proto string) (s *Servent, errno int) [failre tval=nil] = ws2_32.getservbyname
472 //sys Ntohs(netshort uint16) (u uint16) = ws2_32.ntohs 474 //sys Ntohs(netshort uint16) (u uint16) = ws2_32.ntohs
473 //sys DnsQuery(name string, qtype uint16, options uint32, extra *byte, qrs **D NSRecord, pr *byte) (status uint32) = dnsapi.DnsQuery_W 475 //sys DnsQuery(name string, qtype uint16, options uint32, extra *byte, qrs **D NSRecord, pr *byte) (status uint32) = dnsapi.DnsQuery_W
474 //sys DnsRecordListFree(rl *DNSRecord, freetype uint32) = dnsapi.DnsRecordList Free 476 //sys DnsRecordListFree(rl *DNSRecord, freetype uint32) = dnsapi.DnsRecordList Free
475 477
476 // For testing: clients can set this flag to force 478 // For testing: clients can set this flag to force
477 // creation of IPv6 sockets to return EAFNOSUPPORT. 479 // creation of IPv6 sockets to return EAFNOSUPPORT.
478 var SocketDisableIPv6 bool 480 var SocketDisableIPv6 bool
479 481
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
626 func GetAcceptIOCPSockaddrs(attrs *byte) (lsa, rsa Sockaddr) { 628 func GetAcceptIOCPSockaddrs(attrs *byte) (lsa, rsa Sockaddr) {
627 var lrsa, rrsa *RawSockaddrAny 629 var lrsa, rrsa *RawSockaddrAny
628 var llen, rlen int32 630 var llen, rlen int32
629 alen := uint32(unsafe.Sizeof(*lrsa)) 631 alen := uint32(unsafe.Sizeof(*lrsa))
630 GetAcceptExSockaddrs(attrs, 0, alen, alen, &lrsa, &llen, &rrsa, &rlen) 632 GetAcceptExSockaddrs(attrs, 0, alen, alen, &lrsa, &llen, &rrsa, &rlen)
631 lsa, _ = lrsa.Sockaddr() 633 lsa, _ = lrsa.Sockaddr()
632 rsa, _ = rrsa.Sockaddr() 634 rsa, _ = rrsa.Sockaddr()
633 return 635 return
634 } 636 }
635 637
638 func WSASendTo(s uint32, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32 , to Sockaddr, overlapped *Overlapped, croutine *byte) (errno int) {
brainman 2010/11/19 05:22:00 You would have to rename this into something else.
vcc 2010/11/20 03:14:58 Already has Sendto, func Sendto(fd int, p []byte,
639 rsa, l, _ := to.sockaddr()
brainman 2010/11/19 05:22:00 Should check for errors. See Bind() or Connect() f
vcc 2010/11/20 03:14:58 Done.
640 errno = _WSASendTo(s, bufs, bufcnt, sent, flags, (*RawSockaddrAny)(unsaf e.Pointer(rsa)), l, overlapped, croutine)
641 return
642 }
643
636 // TODO(brainman): fix all needed for net 644 // TODO(brainman): fix all needed for net
637 645
638 func Accept(fd int) (nfd int, sa Sockaddr, errno int) { r eturn 0, nil, EWINDOWS } 646 func Accept(fd int) (nfd int, sa Sockaddr, errno int) { r eturn 0, nil, EWINDOWS }
639 func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, errno int) { r eturn 0, nil, EWINDOWS } 647 func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, errno int) { r eturn 0, nil, EWINDOWS }
640 func Sendto(fd int, p []byte, flags int, to Sockaddr) (errno int) { r eturn EWINDOWS } 648 func Sendto(fd int, p []byte, flags int, to Sockaddr) (errno int) { r eturn EWINDOWS }
641 func SetsockoptTimeval(fd, level, opt int, tv *Timeval) (errno int) { r eturn EWINDOWS } 649 func SetsockoptTimeval(fd, level, opt int, tv *Timeval) (errno int) { r eturn EWINDOWS }
642 650
643 type Linger struct { 651 type Linger struct {
644 Onoff int32 652 Onoff int32
645 Linger int32 653 Linger int32
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
748 756
749 func (WaitStatus) Stopped() bool { return false } 757 func (WaitStatus) Stopped() bool { return false }
750 758
751 func (WaitStatus) Continued() bool { return false } 759 func (WaitStatus) Continued() bool { return false }
752 760
753 func (WaitStatus) StopSignal() int { return -1 } 761 func (WaitStatus) StopSignal() int { return -1 }
754 762
755 func (w WaitStatus) Signaled() bool { return w.Status == WAIT_OBJECT_0 } 763 func (w WaitStatus) Signaled() bool { return w.Status == WAIT_OBJECT_0 }
756 764
757 func (WaitStatus) TrapCause() int { return -1 } 765 func (WaitStatus) TrapCause() int { return -1 }
OLDNEW
« no previous file with comments | « src/pkg/net/fd_windows.go ('k') | src/pkg/syscall/zsyscall_windows_386.go » ('j') | no next file with comments »

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b