def GetExpectedUser(self, algo, user_store, group_store):
   user = rdf_client.KnowledgeBaseUser(username="******", full_name="User",
                                       uid="1001", gid="1001",
                                       homedir="/home/user", shell="/bin/bash")
   user.pw_entry = rdf_client.PwEntry(store=user_store, hash_type=algo)
   user.gids = [1001]
   grp = rdf_client.Group(gid=1001, members=["user"], name="user")
   grp.pw_entry = rdf_client.PwEntry(store=group_store, hash_type=algo)
   return user, grp
Esempio n. 2
0
 def ParseGroupEntry(self, line):
     """Extract the members of a group from /etc/group."""
     fields = ("name", "passwd", "gid", "members")
     if line:
         rslt = dict(zip(fields, line.split(":")))
         name = rslt["name"]
         group = self.entry.setdefault(name, client.Group(name=name))
         group.pw_entry.store = self.GetPwStore(rslt["passwd"])
         if group.pw_entry.store == self.base_store:
             group.pw_entry.hash_type = self.GetHashType(rslt["passwd"])
         # If the group contains NIS entries, they may not have a gid.
         if rslt["gid"]:
             group.gid = int(rslt["gid"])
         group.members = set(rslt["members"].split(","))