On 08/01/2012 09:22 AM, Raphaël Pinson wrote:
Hi Pat,
Sorry for the long delay in replying to you.
No worries, I've been busy too!
On Thu, Apr 19, 2012 at 11:47 PM, Pat Riehecky <[email protected]
<mailto:[email protected]>> wrote:
(Apologies for the return of this old thread, but the history
seemed to help provide context)
I've almost got this working the way I think it should and reading
my site's krb5.conf. The only remaining issue I'm running into is
with 'default_tgs_enctypes'. I'd love to get it into a sequence,
but I can't seem to figure out how. The attached patch gets me
really close, where I've got a sequence called 'type' under
default_tgs_enctypes, but the extra part of the tree seems to be
extra rather than useful, plus it seems to make setting those
things a bit messy when it wasn't before - Was
/files/etc/krb5.conf/libdefaults/default_tgs_enctypes = 'thing' my
changes make
/files/etc/krb5.conf/libdefaults/default_tgs_enctypes/type[x] =
'thing' which is not right.....
The patch you attached leads to an ambiguity:
$ augparse -I . krb5.aug
Syntax error in lens definition
krb5.aug:49.0-53.87:Failed to compile libdefaults
krb5.aug:47.26-.71:exception: ambiguous iteration
Iterated regexp: /([a-zA-Z0-9]+-[a-zA-Z0-9]+-[a-zA-Z0-9]+)([ \t,]*)/
'A-A-AAA-A-A' can be split into
'A-A-A|=|AA-A-A'
and
'A-A-AA|=|A-A-A'
Iterated lens: krb5.aug:47.26-.70:
Hmmm, this is quite the puzzle.
When one value is specified ('A-A-A') it is followed by a new line, read
terminates, no problem. When multiples are set they are delimited by
spaces, tabs, commas, or a combination of all three. However, the one
at the end may or may not have a trailing delimiter. So I'm not sure I
can enforce delimiters to separate the items.
Currently the third item ('A-A-B', the B) seems to be limited to 3 or 4
characters with a minimum of 3, but it appears that a smaller one is
possible. Grumble.... All of these appear to be valid entries:
rc4-hmac arcfour-hmac arcfour-hmac-md5 aes128-cts des3-cbc-sha1 rc4-hmac
des-cbc-md5 des-cbc-crc
Can augeas do word boundaries? Most of my regex is perl style rather
than POSIX That should solve the ambiguity but my googling is only
turning up perl style....
If I may ask three questions:
So what can I do to get the sequence to populate when there are
multiple items, but not when there are not?
And how do I use the regex match for the sequence name?
Is my attempt at a fix even on the right track?
If you mean to generate an array only where there is more than one
element, and use a fix value otherwise, dynamically, then it's a
rather bad idea, since it will make it hard to add a second value to
an existing unique one.
However, if supporting arrays vs single values is linked to specific
keys, they you could explicitely split the cases to have a lens for
array entries and another lens for simple entries. This is already
done in quite a few modules.
I'll look more closely into the second option here. May I request a
module to pattern my code after?
Pat
_______________________________________________
augeas-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/augeas-devel