repochecker/ip-inspector: gofmt + CI

This commit is contained in:
nemunaire 2022-11-10 16:14:02 +01:00
parent f1a2e6c360
commit 83be5595ba
5 changed files with 12 additions and 16 deletions

View file

@ -25,6 +25,7 @@ steps:
- go get -v -d srs.epita.fr/fic-server/repochecker/epita - go get -v -d srs.epita.fr/fic-server/repochecker/epita
- go get -v -d srs.epita.fr/fic-server/repochecker/file-inspector - go get -v -d srs.epita.fr/fic-server/repochecker/file-inspector
- go get -v -d srs.epita.fr/fic-server/repochecker/grammalecte - go get -v -d srs.epita.fr/fic-server/repochecker/grammalecte
- go get -v -d srs.epita.fr/fic-server/repochecker/pcap-inspector
- go get -v -d srs.epita.fr/fic-server/repochecker/videos - go get -v -d srs.epita.fr/fic-server/repochecker/videos
- go get -v -d srs.epita.fr/fic-server/qa - go get -v -d srs.epita.fr/fic-server/qa
- mkdir deploy - mkdir deploy
@ -55,6 +56,7 @@ steps:
- go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/epita - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/epita
- go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/file-inspector - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/file-inspector
- go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/grammalecte - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/grammalecte
- go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/pcap-inspector
- go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/videos - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/videos
- go vet -v -buildvcs=false srs.epita.fr/fic-server/qa - go vet -v -buildvcs=false srs.epita.fr/fic-server/qa
- go vet -v -buildvcs=false srs.epita.fr/fic-server/settings - go vet -v -buildvcs=false srs.epita.fr/fic-server/settings
@ -114,6 +116,7 @@ steps:
- go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-epita-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/epita - go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-epita-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/epita
- go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-file-inspector-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/file-inspector - go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-file-inspector-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/file-inspector
- go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-grammalecte-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/grammalecte - go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-grammalecte-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/grammalecte
- go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-pcap-inspector-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/pcap-inspector
- go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-videos-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/videos - go build -buildvcs=false -buildmode=plugin -v -o deploy/repochecker-videos-rules-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}.so srs.epita.fr/fic-server/repochecker/videos
- grep "const version" repochecker/update.go | sed -r 's/^.*=\s*(\S.*)$/\1/' > deploy/repochecker.version - grep "const version" repochecker/update.go | sed -r 's/^.*=\s*(\S.*)$/\1/' > deploy/repochecker.version
environment: environment:

View file

@ -17,6 +17,7 @@ RUN go get -d -v ./repochecker && \
go build -v -buildmode=plugin -o repochecker/epita-rules.so ./repochecker/epita && \ go build -v -buildmode=plugin -o repochecker/epita-rules.so ./repochecker/epita && \
go build -v -buildmode=plugin -o repochecker/file-inspector.so ./repochecker/file-inspector && \ go build -v -buildmode=plugin -o repochecker/file-inspector.so ./repochecker/file-inspector && \
go build -v -buildmode=plugin -o repochecker/grammalecte-rules.so ./repochecker/grammalecte && \ go build -v -buildmode=plugin -o repochecker/grammalecte-rules.so ./repochecker/grammalecte && \
go build -v -buildmode=plugin -o repochecker/pcap-inspector.so ./repochecker/pcap-inspector && \
go build -v -buildmode=plugin -o repochecker/videos-rules.so ./repochecker/videos go build -v -buildmode=plugin -o repochecker/videos-rules.so ./repochecker/videos
@ -28,7 +29,7 @@ RUN mkdir /srv/grammalecte && cd /srv/grammalecte && unzip /srv/grammalecte.zip
FROM alpine:3.16 FROM alpine:3.16
ENTRYPOINT ["/usr/bin/repochecker", "--rules-plugins=/usr/lib/epita-rules.so", "--rules-plugins=/usr/lib/file-inspector.so", "--rules-plugins=/usr/lib/grammalecte-rules.so", "--rules-plugins=/usr/lib/videos-rules.so"] ENTRYPOINT ["/usr/bin/repochecker", "--rules-plugins=/usr/lib/epita-rules.so", "--rules-plugins=/usr/lib/file-inspector.so", "--rules-plugins=/usr/lib/grammalecte-rules.so", "--rules-plugins=/usr/lib/pcap-inspector.so", "--rules-plugins=/usr/lib/videos-rules.so"]
RUN apk add --no-cache git python3 ffmpeg RUN apk add --no-cache git python3 ffmpeg
@ -37,4 +38,5 @@ COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/repochecker /usr
COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/epita-rules.so /usr/lib/epita-rules.so COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/epita-rules.so /usr/lib/epita-rules.so
COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/file-inspector.so /usr/lib/file-inspector.so COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/file-inspector.so /usr/lib/file-inspector.so
COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/grammalecte-rules.so /usr/lib/grammalecte-rules.so COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/grammalecte-rules.so /usr/lib/grammalecte-rules.so
COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/pcap-inspector.so /usr/lib/pcap-inspector.so
COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/videos-rules.so /usr/lib/videos-rules.so COPY --from=gobuild /go/src/srs.epita.fr/fic-server/repochecker/videos-rules.so /usr/lib/videos-rules.so

View file

@ -1,12 +1,12 @@
# IP-INSPECTOR # PCAP-INSPECTOR
Inspects pcap and pcapng files for packets with ip src and ip dst using private IPs Inspects pcap and pcapng files for packets with ip src and ip dst using private IPs
Set VERBOSE_PCAP_CHECK environment variable to enable verbose mode Set `VERBOSE_PCAP_CHECK` environment variable to enable verbose mode
## Build library ## Build library
go build -o ip-inspector -buildmode=plugin main.go files.go go build -o pcap-inspector -buildmode=plugin .
## Requirement ## Requirement

View file

@ -31,9 +31,7 @@ type PcapNgReader struct {
*pcapgo.NgReader *pcapgo.NgReader
} }
//
// Impl interface for reading pcap and pcapng data // Impl interface for reading pcap and pcapng data
//
func (pcapReader *PcapReader) ReadPacketData() (data []byte, ci gopacket.CaptureInfo, err error) { func (pcapReader *PcapReader) ReadPacketData() (data []byte, ci gopacket.CaptureInfo, err error) {
return pcapReader.Reader.ReadPacketData() return pcapReader.Reader.ReadPacketData()
} }
@ -42,12 +40,9 @@ func (pcapNGReader *PcapNgReader) ReadPacketData() (data []byte, ci gopacket.Cap
return pcapNGReader.NgReader.ReadPacketData() return pcapNGReader.NgReader.ReadPacketData()
} }
//
// Iterate thought each packet to find potentialy unwanted packets // Iterate thought each packet to find potentialy unwanted packets
// TODO: Allow custom rules to specify what is a unwanted packet // TODO: Allow custom rules to specify what is a unwanted packet
//
func CheckPcap(pcapReader PcapPacketDataReader, pcapName string) (errs []error) { func CheckPcap(pcapReader PcapPacketDataReader, pcapName string) (errs []error) {
warningFlows := make(map[gopacket.Flow]([]time.Time)) warningFlows := make(map[gopacket.Flow]([]time.Time))
// //
@ -117,7 +112,7 @@ func CheckTextFile(fd *os.File) (errs []error) {
func InspectFileForIPAddr(file *fic.EFile, exceptions *sync.CheckExceptions) (errs []error) { func InspectFileForIPAddr(file *fic.EFile, exceptions *sync.CheckExceptions) (errs []error) {
i, ok := sync.GlobalImporter.(sync.LocalImporter) i, ok := sync.GlobalImporter.(sync.LocalImporter)
if !ok { if !ok {
log.Printf("Unable to load `ip-inspector.so` as the current Importer is not a LocalImporter (%T).", sync.GlobalImporter) log.Printf("Unable to load `pcap-inspector.so` as the current Importer is not a LocalImporter (%T).", sync.GlobalImporter)
return return
} }

View file

@ -4,10 +4,6 @@ import (
"srs.epita.fr/fic-server/admin/sync" "srs.epita.fr/fic-server/admin/sync"
) )
var hooks *sync.CheckHooks
func RegisterChecksHooks(h *sync.CheckHooks) { func RegisterChecksHooks(h *sync.CheckHooks) {
hooks = h
h.RegisterFileHook(InspectFileForIPAddr) h.RegisterFileHook(InspectFileForIPAddr)
} }