Exemplo n.º 1
0
    for j in temp.getwritelist(i):
        if not j:
            continue
        else:
            for k in j.split(","):
                k = k.strip(" ")
                try:
                    wname[k].append(i)
                except KeyError:
                    wname[k] = []
                    wname[k].append(i)
t = vname.keys()
t.extend(wname.keys())
t = list(set(t))
for i in t:
    tmp = User(i)
    if tmp.userexist():
        for j in tmp.showgroups():
            tp = Group(j)
            if tp.groupexist():
                for k in tp.getnumbers():
                    try:
                        if k in group[j]:
                            continue
                        group[j].append(k)
                    except KeyError:
                        group[j] = []
                        group[j].append(k)
            else:
                w = "the group " + j + " doesn't exist."
                log.warning(w)
Exemplo n.º 2
0
Arquivo: add.py Projeto: bary321/samba
def adduser(user, dire, valid=True, write=False):
    if not data.direxit(dire):
        print "Error:the directory named %s doesn't exist." % dire
    else:
        U = User(user)
        if not U.userexist():
            y = raw_input("user %s don't exist.create now?(Y/y)" % user)
            y.lower()
            if y == "y":
                g = raw_input("create user with the same name or other group?(input noting or existed group)")
                if g:
                    G = Group(g)
                    if G.groupexist():
                        U.createuser(initgroup=g, user=user)
                        p = raw_input("Input passwd:(default is the user name)")
                        if not p:
                            U.changepasswdnon("%s" % user)
                        else:
                            U.changepasswdnon(p)
                    else:
                        print "Error:the group named %s don't exist.quit" % g
                else:
                    G = Group(user)
                    if G.groupexist():
                        print "Error:Can't create group '%s'.It already exist." % user
                    else:
                        G.creategroup()
                        U.createuser(initgroup=user, user=user)
                        p = raw_input("Input passwd:(default is the user name)")
                        if not p:
                            U.changepasswdnon("%s" % user)
                        else:
                            U.changepasswdnon(p)
                adduser(user, dire, valid=valid, write=write)
            else:
                exit()
        else:
            Dir = DirBase(dire)
            if valid:
                if Dir.validuserexist(user):
                    print "Error:the user '%s' already exist in this directory's valid user list" % user
                else:
                    Dir.addvaliduser(user)
            if write:
                if Dir.writelistexit(user):
                    print "Error:the user '%s' already exist in this directory's write user list" % user
                else:
                    Dir.addwriteuser(user)