b903df9 Bypass D-BUS interface definition deficiences for trust-fetch-domains

2 files Authored by abbra 5 years ago, Committed by cheimes 5 years ago,
    Bypass D-BUS interface definition deficiences for trust-fetch-domains
    
    In oddjobd it is possible to pass arguments as command line or on the
    stdin. We use command line to pass them but the way oddjobd registers
    the D-BUS method signatures is by specifying all arguments as mandatory.
    
    Internally, oddjobd simply ignores if you passed less arguments than
    specified in the D-BUS defition. Unfortunately, it is not possible to
    specify less than maximum due to D-BUS seeing all arguments in the
    list (30 is defined for the trust-fetch-domains).
    
    To pass options, have to pad a list of arguments to maximum with empty
    strings and then filter out unneeded ones in the script. Option parser
    already removes all options from the list of arguments so all we need to
    do is to take our actual arguments. In case of trust-fetch-domains, it
    is the name of the domain so we can only care about args[0].
    
    Fixes: https://pagure.io/freeipa/issue/7903
    Signed-off-by: Alexander Bokovoy <abokovoy@redhat.com>
    Reviewed-By: Florence Blanc-Renaud <frenaud@redhat.com>
    
        
file modified
+9 -2