aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVitaly Buka <vitalybuka@gmail.com>2022-07-06 13:35:25 -0700
committerVitaly Buka <vitalybuka@gmail.com>2022-09-29 18:03:03 -0700
commit6227b51a99fc7298c1052860992bbf5bbfceb172 (patch)
tree8854a88402ba2e8af808af6381c4385a4d1c551a
parent9d57e973eb6e651fdf6330d1ef1f86c5619afc4d (diff)
downloadlibprotobuf-mutator-6227b51a99fc7298c1052860992bbf5bbfceb172.tar.gz
Document unsupported proto extensions
-rw-r--r--README.md8
1 files changed, 8 insertions, 0 deletions
diff --git a/README.md b/README.md
index ef57607..ef78060 100644
--- a/README.md
+++ b/README.md
@@ -142,6 +142,14 @@ string should be UTF-8, however only "proto3" enforces that. So if fuzzer is
applied to "proto2" type libprotobuf-mutator will generate any strings including
invalid UTF-8. If it's a "proto3" message type, only valid UTF-8 will be used.
+## Extensions
+Currently the library does not mutate
+[extensions](https://developers.google.com/protocol-buffers/docs/proto#extensions).
+This can be a problem if extension contains required fields so the library will not
+be able to change the message into valid initialized state.
+You can use [post processing hooks](#mutation-post-processing-experimental) to
+cleanup/initialize the message as workaround.
+
## Users of the library
* [Chromium](https://cs.chromium.org/search/?q=DEFINE_.*._PROTO_FUZZER%5C\()
* [Envoy](https://github.com/envoyproxy/envoy/search?q=DEFINE_TEXT_PROTO_FUZZER+OR+DEFINE_PROTO_FUZZER+OR+DEFINE_BINARY_PROTO_FUZZER&unscoped_q=DEFINE_TEXT_PROTO_FUZZER+OR+DEFINE_PROTO_FUZZER+OR+DEFINE_BINARY_PROTO_FUZZER&type=Code)