Output Format
-------------
-The output format will always be the JSON-SEQ qlog variant. This has the
-advantage that each event simply involves concatenating another record to an
-output log file and does not require nesting of syntactic constructs between
-events.
+The output format is always the JSON-SEQ qlog variant. This has the advantage
+that each event simply involves concatenating another record to an output log
+file and does not require nesting of syntactic constructs between events.
-Writing to files or to multi-file directories, or to arbitrary BIO sinks, will
-be supported.
+Output is written to a directory containing multiple qlog files.
Basic Usage
-----------
=head1 DESCRIPTION
-OpenSSL 3.3 and later feature unstable support for generating logs in the
-qlog logging format, which can be used to obtain diagnostic data for QUIC
-connections. The data generated includes information on packets sent and
-received and the frames contained within them, as well as loss detection and
-other events.
+OpenSSL has unstable support for generating logs in the qlog logging format,
+which can be used to obtain diagnostic data for QUIC connections. The data
+generated includes information on packets sent and received and the frames
+contained within them, as well as loss detection and other events.
The qlog output generated by OpenSSL can be used to obtain diagnostic
visualisations of a given QUIC connection using tools such as B<qvis>.
L<openssl-quic(7)>, L<openssl-env(7)>
+=head1 HISTORY
+
+This functionality was added in OpenSSL 3.3.
+
=head1 COPYRIGHT
Copyright 2024 The OpenSSL Project Authors. All Rights Reserved.
json->state = STATE_PRE_KEY;
}
-/* End a JSON obejct. Must be matched with a call to ossl_json_object_begin(). */
+/* End a JSON object. Must be matched with a call to ossl_json_object_begin(). */
void ossl_json_object_end(OSSL_JSON_ENC *json)
{
composite_end(json, 0, '}');
json->state = STATE_PRE_ITEM;
}
-/* End a JSON array. Must be matched with a call to ossl_json_array_end(). */
+/* End a JSON array. Must be matched with a call to ossl_json_array_begin(). */
void ossl_json_array_end(OSSL_JSON_ENC *json)
{
composite_end(json, 1, ']');