Added opportunity to set extra user options.

Change-Id: I191eca8806f92c84896e776ddc8b9263f00947ae
Related-PROD: PROD-28027
diff --git a/_modules/keystoneng.py b/_modules/keystoneng.py
index 76b6870..ddf0da5 100644
--- a/_modules/keystoneng.py
+++ b/_modules/keystoneng.py
@@ -1082,11 +1082,11 @@
     return ret
 
 
-def user_update(user_id=None, name=None, email=None, enabled=None,
+def user_update(user_id=None, name=None, email=None, enabled=None, options=None,
                 tenant=None, profile=None, project=None, description=None, **connection_args):
     '''
     Update a user's information (keystone user-update)
-    The following fields may be updated: name, email, enabled, tenant.
+    The following fields may be updated: name, email, enabled, tenant, options.
     Because the name is one of the fields, a valid user id is required.
 
     CLI Examples:
@@ -1112,6 +1112,8 @@
         email = user.email
     if enabled is None:
         enabled = user.enabled
+    if not options:
+       options = {}
 
     if _client_version(kstone) > 2:
         if description is None:
@@ -1129,9 +1131,9 @@
             project_id = getattr(user, 'project_id', None)
 
         kstone.users.update(user=user_id, name=name, email=email, enabled=enabled, description=description,
-                            project_id=project_id)
+                            options=options, project_id=project_id)
     else:
-        kstone.users.update(user=user_id, name=name, email=email, enabled=enabled)
+        kstone.users.update(user=user_id, name=name, email=email, options=options, enabled=enabled)
 
         tenant_id = None
         if tenant: