6ad198a IFP: Add GetUserAttrs call

Authored and Committed by jhrozek 9 years ago
    IFP: Add GetUserAttrs call
    
    Adds a DBus method that allows the caller to retrieve attributes of a
    user. The synopsis of the call is as follows:
        <method name="GetUserAttr">
            <arg type="s" name="user" direction="in"/>
            <arg type="as" name="attr" direction="in"/>
            <arg type="a{sv}" name="values" direction="out"/>
        </method>
    
    The return value is an array (one attribute per array member) of
    dictionaries. The key of the dictionary is the attribute name, the value
    is a variant containing the attribute values as strings.
    
    If an attribute does not exist or is not permitted to be read, no error
    is returned. If the users does not exist, the method returns an error.
    
    In future patches this function will be marked as obsolete in favor of
    object-oriented approach.
    
    ifp_user_get_attr_unpack_msg is a separate function to allow extending
    it in a later patch.
    
    The function to check the cache validity duplicates quite a bit of code
    with the NSS responder. The refactoring would be nice to get done along
    with #843.
    
    Reviewed-by: Pavel Březina <pbrezina@redhat.com>
    Reviewed-by: Stef Walter <stefw@redhat.com>
    (cherry picked from commit 2fbe9b9373dcdc28558da07690e57ff7a162a11d)
    
        
file modified
+1 -0
file modified
+564 -0