Refactor Spicy bridge and add TCP protocol detection parser#190
Open
furusiyya wants to merge 18 commits into
Open
Refactor Spicy bridge and add TCP protocol detection parser#190furusiyya wants to merge 18 commits into
furusiyya wants to merge 18 commits into
Conversation
* Adds C++ bridge (bridge.{h,cpp}) to embed Spicy/HILTI in Glutton
* Spawns single-threaded worker goroutine for parser calls
* Registers and exposes parsers via spicy.Initialize()
* Implements Spicy-based HTTP handler and grammar (parsers/http.spicy)
* Adds wire protocol selector in protocols.go (toggle with viper `spicy.enabled`)
* Adds build rules for Spicy grammars (protocols/spicy/Makefile)
…ze cap & init errors
* reserves field slots without duplicating names; avoid double-free / leak * detects and aborts on strdup / malloc failures, rolling back field_count * adds early-exit helper * adds clarifying comments
…o version to 1.23
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Introduce Spicy parser framework with HTTP parser implementation
Collaborator
Author
|
@glaslos It’s ready for review. I’ll probably rebase and merge it afterward. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
It's a continuation of GSoC PR #186 and Fixes #184.
Here's the summary of updates:
TCP::ProtocolSpicy parser for payload-based protocol detectionspicy.Parse("tcp", sample)when Spicy is enabledTodo: Rewrite the Glutton documentation to make it more understandable for developers and security researchers.