...

Source file src/cmd/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go

     1	// Copyright 2009 The Go Authors. All rights reserved.
     2	// Use of this source code is governed by a BSD-style
     3	// license that can be found in the LICENSE file.
     4	
     5	// +build 386,freebsd
     6	
     7	package unix
     8	
     9	import (
    10		"syscall"
    11		"unsafe"
    12	)
    13	
    14	func setTimespec(sec, nsec int64) Timespec {
    15		return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
    16	}
    17	
    18	func setTimeval(sec, usec int64) Timeval {
    19		return Timeval{Sec: int32(sec), Usec: int32(usec)}
    20	}
    21	
    22	func SetKevent(k *Kevent_t, fd, mode, flags int) {
    23		k.Ident = uint32(fd)
    24		k.Filter = int16(mode)
    25		k.Flags = uint16(flags)
    26	}
    27	
    28	func (iov *Iovec) SetLen(length int) {
    29		iov.Len = uint32(length)
    30	}
    31	
    32	func (msghdr *Msghdr) SetControllen(length int) {
    33		msghdr.Controllen = uint32(length)
    34	}
    35	
    36	func (cmsg *Cmsghdr) SetLen(length int) {
    37		cmsg.Len = uint32(length)
    38	}
    39	
    40	func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
    41		var writtenOut uint64 = 0
    42		_, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr((*offset)>>32), uintptr(count), 0, uintptr(unsafe.Pointer(&writtenOut)), 0, 0)
    43	
    44		written = int(writtenOut)
    45	
    46		if e1 != 0 {
    47			err = e1
    48		}
    49		return
    50	}
    51	
    52	func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
    53	

View as plain text