diff --git a/SYNTAX-REFERENCE.md b/SYNTAX-REFERENCE.md
index 30ed998fb..a3fffe351 100755
--- a/SYNTAX-REFERENCE.md
+++ b/SYNTAX-REFERENCE.md
@@ -2392,6 +2392,31 @@ read-size: 2048
```
+
+
+
+
+
+
+read-all bool
+
+
+
+
+ReadAll determines if the data stream should be read till the end regardless of the size
+
+Default value for read-all is false.
+
+
+
+Examples:
+
+
+```yaml
+read-all: false
+```
+
+
diff --git a/nuclei-jsonschema.json b/nuclei-jsonschema.json
index 56253b7ed..57f8fc7fa 100755
--- a/nuclei-jsonschema.json
+++ b/nuclei-jsonschema.json
@@ -809,6 +809,11 @@
"title": "size of network response to read",
"description": "Size of response to read at the end. Default is 1024 bytes"
},
+ "read-all": {
+ "type": "boolean",
+ "title": "read all response stream",
+ "description": "Read all response stream till the server stops sending"
+ },
"matchers": {
"items": {
"$ref": "#/definitions/matchers.Matcher"
diff --git a/v2/pkg/templates/templates_doc.go b/v2/pkg/templates/templates_doc.go
index 0b19e675d..d6042dfbd 100644
--- a/v2/pkg/templates/templates_doc.go
+++ b/v2/pkg/templates/templates_doc.go
@@ -843,7 +843,7 @@ func init() {
FieldName: "network",
},
}
- NETWORKRequestDoc.Fields = make([]encoder.Doc, 9)
+ NETWORKRequestDoc.Fields = make([]encoder.Doc, 10)
NETWORKRequestDoc.Fields[0].Name = "id"
NETWORKRequestDoc.Fields[0].Type = "string"
NETWORKRequestDoc.Fields[0].Note = ""
@@ -883,22 +883,29 @@ func init() {
NETWORKRequestDoc.Fields[5].Comments[encoder.LineComment] = "ReadSize is the size of response to read at the end"
NETWORKRequestDoc.Fields[5].AddExample("", 2048)
- NETWORKRequestDoc.Fields[6].Name = "matchers"
- NETWORKRequestDoc.Fields[6].Type = "[]matchers.Matcher"
+ NETWORKRequestDoc.Fields[6].Name = "read-all"
+ NETWORKRequestDoc.Fields[6].Type = "bool"
NETWORKRequestDoc.Fields[6].Note = ""
- NETWORKRequestDoc.Fields[6].Description = "Matchers contains the detection mechanism for the request to identify\nwhether the request was successful by doing pattern matching\non request/responses.\n\nMultiple matchers can be combined with `matcher-condition` flag\nwhich accepts either `and` or `or` as argument."
- NETWORKRequestDoc.Fields[6].Comments[encoder.LineComment] = "Matchers contains the detection mechanism for the request to identify"
- NETWORKRequestDoc.Fields[7].Name = "extractors"
- NETWORKRequestDoc.Fields[7].Type = "[]extractors.Extractor"
+ NETWORKRequestDoc.Fields[6].Description = "ReadAll determines if the data stream should be read till the end regardless of the size\n\nDefault value for read-all is false."
+ NETWORKRequestDoc.Fields[6].Comments[encoder.LineComment] = "ReadAll determines if the data stream should be read till the end regardless of the size"
+
+ NETWORKRequestDoc.Fields[6].AddExample("", false)
+ NETWORKRequestDoc.Fields[7].Name = "matchers"
+ NETWORKRequestDoc.Fields[7].Type = "[]matchers.Matcher"
NETWORKRequestDoc.Fields[7].Note = ""
- NETWORKRequestDoc.Fields[7].Description = "Extractors contains the extraction mechanism for the request to identify\nand extract parts of the response."
- NETWORKRequestDoc.Fields[7].Comments[encoder.LineComment] = "Extractors contains the extraction mechanism for the request to identify"
- NETWORKRequestDoc.Fields[8].Name = "matchers-condition"
- NETWORKRequestDoc.Fields[8].Type = "string"
+ NETWORKRequestDoc.Fields[7].Description = "Matchers contains the detection mechanism for the request to identify\nwhether the request was successful by doing pattern matching\non request/responses.\n\nMultiple matchers can be combined with `matcher-condition` flag\nwhich accepts either `and` or `or` as argument."
+ NETWORKRequestDoc.Fields[7].Comments[encoder.LineComment] = "Matchers contains the detection mechanism for the request to identify"
+ NETWORKRequestDoc.Fields[8].Name = "extractors"
+ NETWORKRequestDoc.Fields[8].Type = "[]extractors.Extractor"
NETWORKRequestDoc.Fields[8].Note = ""
- NETWORKRequestDoc.Fields[8].Description = "MatchersCondition is the condition between the matchers. Default is OR."
- NETWORKRequestDoc.Fields[8].Comments[encoder.LineComment] = "MatchersCondition is the condition between the matchers. Default is OR."
- NETWORKRequestDoc.Fields[8].Values = []string{
+ NETWORKRequestDoc.Fields[8].Description = "Extractors contains the extraction mechanism for the request to identify\nand extract parts of the response."
+ NETWORKRequestDoc.Fields[8].Comments[encoder.LineComment] = "Extractors contains the extraction mechanism for the request to identify"
+ NETWORKRequestDoc.Fields[9].Name = "matchers-condition"
+ NETWORKRequestDoc.Fields[9].Type = "string"
+ NETWORKRequestDoc.Fields[9].Note = ""
+ NETWORKRequestDoc.Fields[9].Description = "MatchersCondition is the condition between the matchers. Default is OR."
+ NETWORKRequestDoc.Fields[9].Comments[encoder.LineComment] = "MatchersCondition is the condition between the matchers. Default is OR."
+ NETWORKRequestDoc.Fields[9].Values = []string{
"and",
"or",
}