summaryrefslogtreecommitdiffstats
path: root/doc/man5
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2019-05-06 10:50:35 +0200
committerRichard Levitte <levitte@openssl.org>2019-11-12 13:33:12 +0100
commit0255c1742a5a8186802fdef19b4f1c8c701a27bc (patch)
treedac795407b3aba52bffa35cc1bea437a1f66777a /doc/man5
parentMake sure KDF reason codes are conserved in their current state (diff)
downloadopenssl-0255c1742a5a8186802fdef19b4f1c8c701a27bc.tar.xz
openssl-0255c1742a5a8186802fdef19b4f1c8c701a27bc.zip
Add a .pragma directive for configuration files
Currently added pragma: .pragma dollarid:on This allows dollar signs to be a keyword character unless it's followed by a opening brace or parenthesis. Fixes #8207 Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/8882)
Diffstat (limited to 'doc/man5')
-rw-r--r--doc/man5/config.pod37
1 files changed, 37 insertions, 0 deletions
diff --git a/doc/man5/config.pod b/doc/man5/config.pod
index e727a2e22d..4b8465594a 100644
--- a/doc/man5/config.pod
+++ b/doc/man5/config.pod
@@ -50,6 +50,9 @@ not support the B<.include> syntax. They would bail out with error
if the B<=> character is not present but with it they just ignore
the include.
+Pragmas can be specified with the B<.pragma> directive.
+See L</PRAGMAS> for mor information.
+
Each section in a configuration file consists of a number of name and
value pairs of the form B<name=value>
@@ -78,6 +81,40 @@ the sequences B<\n>, B<\r>, B<\b> and B<\t> are recognized.
All expansion and escape rules as described above that apply to B<value>
also apply to the path of the B<.include> directive.
+=head1 PRAGMAS
+
+Pragmas can be used to change the behavior of the configuration file
+parser, among others. Currently supported pragmas are:
+
+=over 4
+
+=item B<.pragma> B<dollarid>:I<value>
+
+I<value> can be one of:
+
+=over 4
+
+=item B<"on"> or B<"true">
+
+this signifies that dollar signs are considered an identity character
+from this point on and that variable expansion requires the use of
+braces or parentheses. In other words, C<foo$bar> will be considered
+a name instead of C<foo> followed by the expansion of the variable
+C<bar>.
+This is suitable for platforms where the dollar sign is commonly used
+as part of names.
+
+=item B<"off"> or B<"false">
+
+Turns this pragma off, i.e. C<foo$bar> will be interpreted as C<foo>
+followed by the expansion of the variable C<bar>.
+
+=back
+
+By default, this pragma is turned off.
+
+=back
+
=head1 OPENSSL LIBRARY CONFIGURATION
Applications can automatically configure certain