e5bd52a7ec
Resolves: RHBZ#1079444
88 lines
3.3 KiB
Diff
88 lines
3.3 KiB
Diff
From 286d4389bfbacaa6932dcc34610aa8a78d999766 Mon Sep 17 00:00:00 2001
|
|
From: Dominic Cleal <dcleal@redhat.com>
|
|
Date: Tue, 25 Feb 2014 16:19:51 +0000
|
|
Subject: [PATCH] Krb5: permit braces in values when not in sub-section
|
|
|
|
Fixes RHBZ#1066419
|
|
|
|
(cherry picked from commit d9465ab8e88f91cb5a29eb9f04044876ce45a2d9)
|
|
|
|
Conflicts:
|
|
NEWS
|
|
---
|
|
lenses/krb5.aug | 15 ++++++++-------
|
|
lenses/tests/test_krb5.aug | 7 +++++++
|
|
2 files changed, 15 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/lenses/krb5.aug b/lenses/krb5.aug
|
|
index 8d26cfe..8b4ebe4 100644
|
|
--- a/lenses/krb5.aug
|
|
+++ b/lenses/krb5.aug
|
|
@@ -25,16 +25,17 @@ let realm_re = /[A-Z][.a-zA-Z0-9-]*/
|
|
let app_re = /[a-z][a-zA-Z0-9_]*/
|
|
let name_re = /[.a-zA-Z0-9_-]+/
|
|
|
|
-let value = store /[^;# \t\r\n{}]+/
|
|
-let entry (kw:regexp) (sep:lens) (comment:lens)
|
|
+let value_br = store /[^;# \t\r\n{}]+/
|
|
+let value = store /[^;# \t\r\n]+/
|
|
+let entry (kw:regexp) (sep:lens) (value:lens) (comment:lens)
|
|
= [ indent . key kw . sep . value . (comment|eol) ] | comment
|
|
|
|
let subsec_entry (kw:regexp) (sep:lens) (comment:lens)
|
|
- = ( entry kw sep comment ) | empty
|
|
+ = ( entry kw sep value_br comment ) | empty
|
|
|
|
let simple_section (n:string) (k:regexp) =
|
|
let title = Inifile.indented_title n in
|
|
- let entry = entry k eq comment in
|
|
+ let entry = entry k eq value comment in
|
|
Inifile.record title entry
|
|
|
|
let record (t:string) (e:lens) =
|
|
@@ -59,7 +60,7 @@ let enctype_list (nr:regexp) (ns:string) =
|
|
. (comment|eol) . [ label "#eol" ]
|
|
|
|
let libdefaults =
|
|
- let option = entry (name_re - ("v4_name_convert" |enctypes)) eq comment in
|
|
+ let option = entry (name_re - ("v4_name_convert" |enctypes)) eq value comment in
|
|
let enctype_lists = enctype_list /permitted_enctypes/i "permitted_enctypes"
|
|
| enctype_list /default_tgs_enctypes/i "default_tgs_enctypes"
|
|
| enctype_list /default_tkt_enctypes/i "default_tkt_enctypes" in
|
|
@@ -73,7 +74,7 @@ let login =
|
|
simple_section "login" keys
|
|
|
|
let appdefaults =
|
|
- let option = entry (name_re - ("realm" | "application")) eq comment in
|
|
+ let option = entry (name_re - ("realm" | "application")) eq value_br comment in
|
|
let realm = [ indent . label "realm" . store realm_re .
|
|
eq_openbr . (option|empty)* . closebr . eol ] in
|
|
let app = [ indent . label "application" . store app_re .
|
|
@@ -117,7 +118,7 @@ let logging =
|
|
let capaths =
|
|
let realm = [ indent . key realm_re .
|
|
eq_openbr .
|
|
- (entry realm_re eq comment)* . closebr . eol ] in
|
|
+ (entry realm_re eq value_br comment)* . closebr . eol ] in
|
|
record "capaths" (realm|comment)
|
|
|
|
let dbdefaults =
|
|
diff --git a/lenses/tests/test_krb5.aug b/lenses/tests/test_krb5.aug
|
|
index 0547b65..b0ec6d6 100644
|
|
--- a/lenses/tests/test_krb5.aug
|
|
+++ b/lenses/tests/test_krb5.aug
|
|
@@ -995,3 +995,10 @@ test Krb5.lns get v4_name_convert =
|
|
(* Ticket #288: semicolons for comments *)
|
|
test Krb5.lns get "; AD : This Kerberos configuration is for CERN's Active Directory realm.\n" =
|
|
{ "#comment" = "AD : This Kerberos configuration is for CERN's Active Directory realm." }
|
|
+
|
|
+(* RHBZ#1066419: braces in values *)
|
|
+test Krb5.lns get "[libdefaults]\n
|
|
+default_ccache_name = KEYRING:persistent:%{uid}\n" =
|
|
+ { "libdefaults"
|
|
+ { }
|
|
+ { "default_ccache_name" = "KEYRING:persistent:%{uid}" } }
|
|
--
|
|
1.8.5.3
|
|
|