示例#1
0
文件: udp.go 项目: postfix/go-uv
func (udp *Udp) Bind(sa SockaddrIn, flags uint) (err error) {
	var r int
	sa4, is_v4 := sa.(*SockaddrIn4)
	if is_v4 {
		r = int(C.uv_udp_bind(udp.u, sa4.sa, C.uint(flags)))
	} else {
		sa6, is_v6 := sa.(*SockaddrIn6)
		if is_v6 {
			r = int(C.uv_udp_bind6(udp.u, sa6.sa, C.uint(flags)))
		}
	}
	if r != 0 {
		return udp.GetLoop().LastError().Error()
	}
	return nil
}
示例#2
0
文件: callback.go 项目: zchee/gouv
func uv_udp_bind6(udp *C.uv_udp_t, sa6 C.struct_sockaddr_in6, flags uint) int {
	return int(C.uv_udp_bind6(udp, sa6, C.uint(flags)))
}