strsave
strsave(&up->u_password, pwp->pw_passwd);
strsave(&u.u_basedir, optarg);
strsave(&u.u_comment, optarg);
strsave(&u.u_home, optarg);
strsave(&u.u_expire, optarg);
strsave(&u.u_inactive, optarg);
strsave(&u.u_primgrp, optarg);
strsave(&u.u_skeldir, optarg);
strsave(&u.u_class, optarg);
strsave(&u.u_password, optarg);
strsave(&u.u_shell, optarg);
strsave(&u.u_comment, optarg);
strsave(&u.u_home, optarg);
strsave(&u.u_expire, optarg);
strsave(&u.u_inactive, optarg);
strsave(&u.u_primgrp, optarg);
strsave(&u.u_class, optarg);
strsave(&u.u_password, optarg);
strsave(&u.u_shell, optarg);
static void strsave(char **, const char *);
strsave(&u.u_shell, NOLOGIN);
strsave(&u.u_password, "*");
strsave(&newname, optarg);
strsave(&up->u_primgrp, DEF_GROUP);
strsave(&up->u_basedir, DEF_BASEDIR);
strsave(&up->u_skeldir, DEF_SKELDIR);
strsave(&up->u_shell, DEF_SHELL);
strsave(&up->u_comment, DEF_COMMENT);
strsave(&up->u_class, DEF_CLASS);
strsave(&up->u_primgrp, cp);
strsave(&up->u_basedir, cp);
strsave(&up->u_skeldir, cp);
strsave(&up->u_shell, cp);
strsave(&up->u_password, cp);
strsave(&up->u_class, cp);
strsave(&up->u_inactive, cp);
strsave(&up->u_expire, cp);