Golang C.pcap_datalink_val_to_name类(方法)实例源码

下面列出了Golang C.pcap_datalink_val_to_name 类(方法)源码代码实例,从而了解它的用法。

作者:dlint    项目:gopca   
func DatalinkValueToName(dlt int) string {
	name := C.pcap_datalink_val_to_name(C.int(dlt))
	if nil != name {
		return C.GoString(name)
	}
	return ""
}

作者:alvinle    项目:gopca   
func DatalinkName(dlt int) (ret string) {
	name := C.pcap_datalink_val_to_name(C.int(dlt))
	if name != nil {
		ret = C.GoString(name)
	}
	return
}

作者:hongruiq    项目:gopca   
func DatalinkValueToName(dlt int) error {
	name := C.pcap_datalink_val_to_name(C.int(dlt))
	if nil != name {
		return errors.New(C.GoString(name))
	}
	return nil
}

作者:doncker    项目:gopacke   
// Obtains a list of all possible data link types supported for an interface.
func (p *Handle) ListDataLinks() (datalinks []Datalink, err error) {
	var dlt_buf *C.int

	n := int(C.pcap_list_datalinks(p.cptr, &dlt_buf))
	if -1 == n {
		return nil, p.Error()
	}

	defer C.pcap_free_datalinks(dlt_buf)

	datalinks = make([]Datalink, n)

	dltArray := (*[100]C.int)(unsafe.Pointer(dlt_buf))

	for i := 0; i < n; i++ {
		expr := C.pcap_datalink_val_to_name((*dltArray)[i])
		datalinks[i].Name = C.GoString(expr)

		expr = C.pcap_datalink_val_to_description((*dltArray)[i])
		datalinks[i].Description = C.GoString(expr)
	}

	return datalinks, nil
}


问题


面经


文章

微信
公众号

扫码关注公众号