]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
cmd: simplify lxc-usernsexec
authorChristian Brauner <christian.brauner@ubuntu.com>
Sun, 19 Aug 2018 17:37:49 +0000 (19:37 +0200)
committerChristian Brauner <christian.brauner@ubuntu.com>
Sun, 19 Aug 2018 18:27:45 +0000 (20:27 +0200)
Calculate length only once.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/cmd/lxc_usernsexec.c

index fa1b6a2338982f34d26560c3c22c2866049d399d..a2c51800569eed6db22265862407264bb55eede5 100644 (file)
@@ -194,8 +194,9 @@ static int parse_map(char *map)
  * only use the first one for each of uid and gid, because otherwise we're not
  * sure which entries the user wanted.
  */
-static int read_default_map(char *fnam, int which, char *username)
+static int read_default_map(char *fnam, int which, char *user)
 {
+       size_t len;
        char *p1, *p2;
        FILE *fin;
        struct id_map *newmap;
@@ -207,10 +208,9 @@ static int read_default_map(char *fnam, int which, char *username)
        if (!fin)
                return -1;
 
+       len = strlen(user);
        while (getline(&line, &sz, fin) != -1) {
-               if (sz <= strlen(username) ||
-                   strncmp(line, username, strlen(username)) != 0 ||
-                   line[strlen(username)] != ':')
+               if (sz <= len || strncmp(line, user, len) != 0 || line[len] != ':')
                        continue;
 
                p1 = strchr(line, ':');