Bug 1027338 - Account provider: cannot delete user when his home directory couldn't be deleted
Summary: Account provider: cannot delete user when his home directory couldn't be deleted
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: openlmi-providers
Version: 7.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Tomáš Bžatek
QA Contact: Robin Hack
URL:
Whiteboard:
Depends On:
Blocks: 922084
TreeView+ depends on / blocked
 
Reported: 2013-11-06 15:24 UTC by Petr Sklenar
Modified: 2014-06-18 03:05 UTC (History)
2 users (show)

Fixed In Version: openlmi-providers-0.4.1-7.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-06-13 12:01:34 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Petr Sklenar 2013-11-06 15:24:19 UTC
Description of problem:
Account provider: cannot delete user after his modification

Version-Release number of selected component (if applicable):
openlmi-0.4.1-1.el7.noarch
openlmi-tools-0.9-3.el7.noarch
libuser-0.60-3.el7.x86_64


How reproducible:
always

Steps to Reproduce:

1, create user
2, modify user
3, delete user
-------
import unittest

import lmi.shell as lmishell
import os
import shutil
import threading
import string
import random
import time

from methods import *

HOST =      "localhost"
USER =      os.environ.get("LMI_CIMOM_USERNAME", "root")
PASSWD =    os.environ.get("LMI_CIMOM_PASSWORD", "blank")

def id_generator(size=6, chars=string.ascii_uppercase + string.digits):
   return ''.join(random.choice(chars) for x in range(size))
#setup
conn = lmishell.connect(HOST, USER, PASSWD)
cs = conn.root.cimv2.PG_ComputerSystem.first_instance()
lams = conn.root.cimv2.LMI_AccountManagementService.first_instance()

#create
for i in range(10):
    myuser = "lmishell-user" + id_generator(10)
    print myuser
    user = lams.CreateAccount(Name=myuser, System=cs)
    user_mod = conn.root.cimv2.LMI_Account.first_instance({"Name" : myuser})
    grp_mod = conn.root.cimv2.LMI_Group.first_instance({"Name": myuser})
    anystring = 'x' * i
    myshell = '/bin/' + anystring
    myhome = '/tmp/' + anystring
    user_mod.LoginShell = myshell
    user_mod.HomeDirectory = myhome
    user_mod.push()
    print user_mod.DeleteUser()
    print grp_mod.DeleteGroup()
---------------------



Actual results:
error code = 4097
LMIReturnValue(rval=4097, rparams=NocaseDict({}), errorstr='')
LMIReturnValue(rval=4097, rparams=NocaseDict({}), errorstr='')


cimserver when running manually says:

(process:30434): GLib-GObject-CRITICAL **: g_value_array_get_nth: assertion `value_array != NULL' failed
(process:30434): GLib-GObject-CRITICAL **: g_value_get_long: assertion `G_VALUE_HOLDS_LONG (value)' failed

Expected results:
I can do deletion

Additional info:

Comment 2 Petr Sklenar 2013-11-06 15:34:25 UTC
I haven't home created, so
should user be deleted by this case? I vote for 'yes'

Comment 4 Ludek Smid 2014-06-13 12:01:34 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.


Note You need to log in before you can comment on or make changes to this bug.