NFNetLinkQueue returns information about current state of netfilter queues.
()
| 48 | |
| 49 | // NFNetLinkQueue returns information about current state of netfilter queues. |
| 50 | func (fs FS) NFNetLinkQueue() ([]NFNetLinkQueue, error) { |
| 51 | data, err := util.ReadFileNoStat(fs.proc.Path("net/netfilter/nfnetlink_queue")) |
| 52 | if err != nil { |
| 53 | return nil, err |
| 54 | } |
| 55 | |
| 56 | queue := []NFNetLinkQueue{} |
| 57 | if len(data) == 0 { |
| 58 | return queue, nil |
| 59 | } |
| 60 | |
| 61 | scanner := bufio.NewScanner(bytes.NewReader(data)) |
| 62 | for scanner.Scan() { |
| 63 | line := scanner.Text() |
| 64 | nFNetLinkQueue, err := parseNFNetLinkQueueLine(line) |
| 65 | if err != nil { |
| 66 | return nil, err |
| 67 | } |
| 68 | queue = append(queue, *nFNetLinkQueue) |
| 69 | } |
| 70 | return queue, nil |
| 71 | } |
| 72 | |
| 73 | // parseNFNetLinkQueueLine parses each line of the /proc/net/netfilter/nfnetlink_queue file. |
| 74 | func parseNFNetLinkQueueLine(line string) (*NFNetLinkQueue, error) { |
nothing calls this directly
no test coverage detected