Skip to content

Commit

Permalink
Merge branch 'release-3.8.4' into 'develop'
Browse files Browse the repository at this point in the history
Update version to 3.84 and significant updates to the 'new' event processing...

See merge request carbonblack/integrations/event-forwarder!40
  • Loading branch information
pstephan-cb committed Oct 6, 2022
2 parents 7e64ef0 + 39afc1f commit c7bfa8c
Show file tree
Hide file tree
Showing 26 changed files with 260 additions and 135 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# CB EDR Event Forwarder Changelog

## v3.8.4

#### Bug Fixes / Changes

* The service correctly determines routable URLs for Hosted EDR alert emails.
* The service correctly processes bundled, compressed event data.


## v3.8.3

#### Bug Fixes / Changes
Expand Down
15 changes: 7 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
GIT_VERSION := 3.8.3
VERSION := 3.8.3
GIT_VERSION := 3.8.4
VERSION := 3.8.4
GO_PREFIX := github.com/carbonblack/cb-event-forwarder
EL_VERSION := $(shell rpm -E %{rhel})
TARGET_OS=linux
Expand Down Expand Up @@ -71,17 +71,16 @@ unittest: compile-protobufs
go test ./cmd/cb-event-forwarder

test: unittest
rm -rf test_output/gold_output
rm -rf test_output/go_output
rm -rf test_output/leef_output
mkdir test_output/gold_output
rm -rf test_output
rm -rf test_output_old
mkdir -p test_output/gold_output
python test/scripts/process_events_python.py test/raw_data test_output/gold_output
PYTHONIOENCODING=utf8 python test/scripts/compare_outputs.py test_output/gold_output test_output/go_output > test_output/output.txt

clean:
rm -f cb-event-forwarder
rm -rf test_output/gold_output
rm -rf test_output/go_output
rm -rf test_output
rm -rf test_output_old
rm -rf dist
rm -rf build
rm -f VERSION
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,10 +69,10 @@ A new dockerized edition of Event Forwarder is now available as of EF 3.8.2 for
It can be installed with this procedure:

#### Procedure
1. Retrieve the containerized version of Event Forwarder 3.8.2 with docker using this command:
`docker pull projects.registry.vmware.com/carbonblack/event-forwarder:3.8.2`
1. Retrieve the containerized version of Event Forwarder 3.8.4 with docker using this command:
`docker pull projects.registry.vmware.com/carbonblack/event-forwarder:3.8.4`
2. Retag the downloaded Event Forwarder image using this command:
`docker tag projects.registry.vmware.com/carbonblack/event-forwarder:3.8.2 projects.registry.vmware.com/carbonblack/event-forwarder:latest`
`docker tag projects.registry.vmware.com/carbonblack/event-forwarder:3.8.4 projects.registry.vmware.com/carbonblack/event-forwarder:latest`
3. From the directory where the edr-docker script is installed, extract the yml file using this command:
`docker run --rm --entrypoint=/bin/cat projects.registry.vmware.com/carbonblack/event-forwarder:latest /compose.yml > event-forwarder.yml`
4. Set up Carbon Black EDR to control Event Forwarder. Edit data/config/cb.conf and add the following values:
Expand Down Expand Up @@ -279,4 +279,4 @@ To build an RPM package, use `make rpm`. Make sure to set the `RPM_OUTPUT_DIR` e

## Changelog

See CHANGELOG.md.
See CHANGELOG.md.
58 changes: 29 additions & 29 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,38 @@ val jsonModelGenerationTask = tasks.register<Exec>("runEasyJson") {
args("generateeasyjsonmodels")
}

val buildEventForwarderTask = tasks.register<Exec>("buildEventForwarder") {
dependsOn(depTask)
dependsOn(protoGenerationTask)
dependsOn(jsonModelGenerationTask)

val outputDir = File("${project.buildDir}/rpm")

inputs.dir("cmd/cb-event-forwarder")
inputs.dir("cmd/go-serviced")
inputs.dir("pkg")
inputs.dir("scripts/")
inputs.files("cb-event-forwarder.rpm.spec", "MANIFEST*", "Makefile")
outputs.dir(outputDir)

doFirst {
project.delete(outputDir)
}

environment("RPM_OUTPUT_DIR", outputDir)
environment("GOPATH", goPath)
environment("RABBITMQ_SALT", rabbitMQSalt)
commandLine = listOf("make", "rpm")
}

val build = tasks.named("build").configure {
dependsOn(buildEventForwarderTask)
}

val unitTestTask = tasks.register<Exec>("runUnitTests") {
dependsOn(protoGenerationTask)
dependsOn(depTask)
dependsOn(buildEventForwarderTask)

val unitTestResultsFile = File("$buildDir/unittest.out")

Expand Down Expand Up @@ -111,35 +140,6 @@ val criticTask = tasks.register<Exec>("criticizeCode") {
args("critic")
}

val buildEventForwarderTask = tasks.register<Exec>("buildEventForwarder") {
dependsOn(depTask)
dependsOn(protoGenerationTask)
dependsOn(jsonModelGenerationTask)
dependsOn(unitTestTask)

val outputDir = File("${project.buildDir}/rpm")

inputs.dir("cmd/cb-event-forwarder")
inputs.dir("cmd/go-serviced")
inputs.dir("pkg")
inputs.dir("scripts/")
inputs.files("cb-event-forwarder.rpm.spec", "MANIFEST*", "Makefile")
outputs.dir(outputDir)

doFirst {
project.delete(outputDir)
}

environment("RPM_OUTPUT_DIR", outputDir)
environment("GOPATH", goPath)
environment("RABBITMQ_SALT", rabbitMQSalt)
commandLine = listOf("make", "rpm")
}

val build = tasks.named("build").configure {
dependsOn(buildEventForwarderTask)
}

val buildEventForwarderDockerImageTask = tasks.register<Exec>("buildEventForwarderDockerImage") {
dependsOn(buildEventForwarderTask)
executable("docker")
Expand Down
2 changes: 1 addition & 1 deletion cb-event-forwarder.rpm.spec
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
%global debug_package %{nil}
%global __os_install_post /usr/lib/rpm/brp-compress %{nil}

%define bare_version 3.8.3
%define bare_version 3.8.4

%define release 1

Expand Down
2 changes: 1 addition & 1 deletion cmd/cb-event-forwarder/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ var (
debug = flag.Bool("debug", false, "Enable debugging mode")
)

var version = "3.8.3"
var version = "3.8.4"
var rabbitMQSalt = ""

var signals = make(chan os.Signal, 2)
Expand Down
4 changes: 2 additions & 2 deletions docker/compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ services:
image: projects.registry.vmware.com/carbonblack/event-forwarder:latest
volumes:
- ./data/config/cb.conf:/etc/cb/cb.conf:ro
- ./data/integrations:/etc/cb/integrations
- ./data/integrations:/etc/cb/integrations:z
- ./data/config/integrations/event-forwarder:/root/event-forwarder-edr
- ./data/logs/event-forwarder:/var/log/cb/integrations/cb-event-forwarder
- ./data/logs/event-forwarder:/var/log/cb/integrations/cb-event-forwarder:z
networks:
- carbonblack
networks:
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# The event-forwarder version
currentVersion=3.8.3-1
currentVersion=3.8.4-1

# Built in Gradle properties
org.gradle.parallel=true
2 changes: 1 addition & 1 deletion pkg/forwarder/input_worker.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import (
)

func (inputWorker InputWorker) processZipPB(body []byte, routingKey, contentType string, headers amqp.Table, exchangeName string) {
msgs, err := inputWorker.ProcessProtobufBundle(routingKey, body, headers)
msgs, err := inputWorker.ProcessRawZipBundle(routingKey, body, headers)
if err != nil {
inputWorker.reportBundleDetails(routingKey, body, headers)
inputWorker.reportError(routingKey, "Could not process raw zip bundle", err)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -861,6 +861,8 @@ func (pbm ProtobufMessageProcessor) ProcessProtobufBundle(routingKey string, bod
bytesRead += 4

if messageLength+bytesRead > totalLength {
log.Debugf("error in ProcessProtobufBundle for event index %d: Length %d exceeds %d; giving up - host: %s",
i, messageLength, totalLength, headers["sensorHostName"])
err = fmt.Errorf("error in ProcessProtobufBundle for event index %d: Length %d exceeds %d; giving up",
i, messageLength, totalLength)
break
Expand Down
1 change: 0 additions & 1 deletion test/raw_data/zip/0.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/1.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/10.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/11.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/12.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/13.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/14.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/2.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/3.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/4.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/5.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/6.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/7.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/8.txt

This file was deleted.

1 change: 0 additions & 1 deletion test/raw_data/zip/9.txt

This file was deleted.

Loading

0 comments on commit c7bfa8c

Please sign in to comment.