File: test-script

package info (click to toggle)
libuser 1%3A0.64%2Bgit20241106~dfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,184 kB
  • sloc: ansic: 16,599; python: 2,561; sh: 883; yacc: 782; makefile: 236; xml: 106
file content (81 lines) | stat: -rwxr-xr-x 2,305 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/usr/bin/python

import libuser
import os
import time

print("--------- Initializing.")
admin = libuser.admin()

print("--------- Listing.")
for item in sorted(admin.enumerateUsers("l*")):
	print("Found a user named \"" + item + "\".")

print("--------- Lookup.")
ldap = admin.lookupUserByName("ldap")

print("--------- Reading attribute (get).")
print(ldap.get(libuser.LOGINSHELL))
print("--------- Reading attribute (map).")
print(ldap[libuser.LOGINSHELL])
print("--------- Reading keys.")
print(list(ldap.keys()))

print("--------- Setting attribute.")
ldap.set(libuser.LOGINSHELL, ["/bin/true"])
ldap[libuser.LOGINSHELL] = "/bin/true"
ldap[libuser.LOGINSHELL] = ["/bin/true"]

print("--------- Reading attribute (get).")
print(ldap.get(libuser.LOGINSHELL))
print("--------- Reading attribute (map).")
print(ldap[libuser.LOGINSHELL])

print("--------- Getting directory list.")
dir(ldap)

print("--------- Modifying user.")
admin.modifyUser(ldap)

print("--------- Enumerating members of the wheel group.")
print(admin.enumerateUsersByGroup("wheel"))

print("--------- Looking up the wheel group.")
wheel = admin.lookupGroupByName("wheel")

print("--------- Reading attribute (memberUid).")
print(wheel[libuser.MEMBERNAME])

print("--------- Creating a new user (jimbo).")
jimbo = admin.initUser("jimbo")
for attr in jimbo.keys():
	print(" " + attr + ":", jimbo.get(attr))

print("--------- Adding the user.")
jimbo[libuser.HOMEDIRECTORY] = '/var/jimbo-home'
print("Set home directory to " + jimbo[libuser.HOMEDIRECTORY][0])
admin.addUser(jimbo)

print("--------- Grepping for the user.")
os.system("grep jimbo /etc/passwd /etc/group /etc/shadow /etc/gshadow")

try:
	dir = jimbo.get(libuser.HOMEDIRECTORY)
	print("--------- Looking at user's directory.")
	os.system("ls " + dir[0])
	print("--------- Looking at mail spool directory.")
	os.system("ls -l /var/mail/*")
except:
	pass

print("--------- Removing the user.")
admin.deleteUser(jimbo)
admin.removeHome(jimbo)
admin.removeMail(jimbo)
print("--------- Grepping for the user.")
os.system("grep jimbo /etc/passwd /etc/group /etc/shadow /etc/gshadow")

print("--------- Getting a list of all users.")
users = admin.enumerateUsersFull()
for user in users:
	print("  User `" + user[libuser.USERNAME][0] + "' has uid ", user[libuser.UIDNUMBER][0])