func()

in pcap-cli/internal/transformer/json_translator.go [685:730]


func (t *JSONPcapTranslator) addTCPflags(
	ctx context.Context,
	tcp *layers.TCP,
	flags *gabs.Container,
) {
	flagsStr := make([]string, 0, len(tcpFlags))

	for key := range tcpFlags {
		switch key {
		case tcpSynStr:
			if tcp.SYN {
				flagsStr = append(flagsStr, tcpSynStr)
			}
		case tcpAckStr:
			if tcp.ACK {
				flagsStr = append(flagsStr, tcpAckStr)
			}
		case tcpPshStr:
			if tcp.PSH {
				flagsStr = append(flagsStr, tcpPshStr)
			}
		case tcpFinStr:
			if tcp.FIN {
				flagsStr = append(flagsStr, tcpFinStr)
			}
		case tcpRstStr:
			if tcp.RST {
				flagsStr = append(flagsStr, tcpRstStr)
			}
		case tcpUrgStr:
			if tcp.URG {
				flagsStr = append(flagsStr, tcpUrgStr)
			}
		case tcpEceStr:
			if tcp.ECE {
				flagsStr = append(flagsStr, tcpEceStr)
			}
		case tcpCwrStr:
			if tcp.CWR {
				flagsStr = append(flagsStr, tcpCwrStr)
			}
		}
	}

	flags.Set(strings.Join(flagsStr, "|"), "str")
}