Documentation
¶
Index ¶
- Constants
- type AuditLogger
- type JsonResult
- type Stdoutput
- func (s *Stdoutput) Banner()
- func (s *Stdoutput) Cycle()
- func (s *Stdoutput) Error(errstring string)
- func (s *Stdoutput) FilterCurrentResults(keep func(ffuf.Result) bool)
- func (s *Stdoutput) Finalize() error
- func (s *Stdoutput) GetCurrentResults() []ffuf.Result
- func (s *Stdoutput) Info(infostring string)
- func (s *Stdoutput) PendingResults() int
- func (s *Stdoutput) PrintResult(res ffuf.Result)
- func (s *Stdoutput) Progress(status ffuf.Progress)
- func (s *Stdoutput) Raw(output string)
- func (s *Stdoutput) Reset()
- func (s *Stdoutput) Result(resp ffuf.Response)
- func (s *Stdoutput) SaveFile(filename, format string) error
- func (s *Stdoutput) SetCurrentResults(results []ffuf.Result)
- func (s *Stdoutput) SetPaused(paused bool)
- func (s *Stdoutput) Warning(warnstring string)
Constants ¶
const ( TERMINAL_CLEAR_LINE = "\r\x1b[2K" ANSI_CLEAR = "\x1b[0m" ANSI_RED = "\x1b[31m" ANSI_GREEN = "\x1b[32m" ANSI_BLUE = "\x1b[34m" ANSI_YELLOW = "\x1b[33m" )
const ( BANNER_HEADER = ` h3fuzz HTTP/3 content discovery ` BANNER_SEP = "________________________________________________" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuditLogger ¶
type AuditLogger struct {
// contains filtered or unexported fields
}
func NewAuditLogger ¶
func NewAuditLogger(filename string) (*AuditLogger, error)
func (*AuditLogger) Close ¶
func (logger *AuditLogger) Close()
func (*AuditLogger) Write ¶
func (logger *AuditLogger) Write(data interface{}) error
type JsonResult ¶
type JsonResult struct {
Input map[string]string `json:"input"`
Position int `json:"position"`
StatusCode int64 `json:"status"`
ContentLength int64 `json:"length"`
ContentWords int64 `json:"words"`
ContentLines int64 `json:"lines"`
ContentType string `json:"content-type"`
RedirectLocation string `json:"redirectlocation"`
ScraperData map[string][]string `json:"scraper"`
Duration time.Duration `json:"duration"`
ResultFile string `json:"resultfile"`
Url string `json:"url"`
Host string `json:"host"`
}
type Stdoutput ¶
type Stdoutput struct {
Results []ffuf.Result
CurrentResults []ffuf.Result
// contains filtered or unexported fields
}
func NewStdoutput ¶
func (*Stdoutput) Cycle ¶
func (s *Stdoutput) Cycle()
Cycle moves the CurrentResults to Results and resets the results slice
func (*Stdoutput) FilterCurrentResults ¶
FilterCurrentResults keeps only the results for which keep returns true. The read-filter-write runs under resultMutex, so a concurrent Result() append is not lost through a stale snapshot the way a caller-side GetCurrentResults / SetCurrentResults pair would drop it.
func (*Stdoutput) GetCurrentResults ¶
GetResults returns the result slice
func (*Stdoutput) PendingResults ¶
PendingResults returns the number of held matches not yet shown to the user: results recorded while paused that still survive the active filters. It is derived from CurrentResults, so a filter change that prunes a held result drops it from this count in the same operation.
func (*Stdoutput) PrintResult ¶
func (*Stdoutput) SetCurrentResults ¶
SetResults sets the result slice
func (*Stdoutput) SetPaused ¶
SetPaused toggles whether Result streams matches to the live terminal. While paused (the interactive console is open) matches are recorded but not printed, so inflight requests completing cannot scroll the console off screen. Leaving a pause (paused == false) marks every held result as shown, since resume reports their count to the user; a subsequent pause then only counts matches that are genuinely new.