[BACK]Return to edit.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / chpass

Diff for /src/usr.bin/chpass/edit.c between version 1.22 and 1.23

version 1.22, 2002/06/27 19:02:40 version 1.23, 2002/07/31 22:08:42
Line 58 
Line 58 
   
 #include "chpass.h"  #include "chpass.h"
   
 void  int
 edit(tempname, pw)  edit(tempname, pw)
         char *tempname;          char *tempname;
         struct passwd *pw;          struct passwd *pw;
Line 67 
Line 67 
   
         for (;;) {          for (;;) {
                 if (lstat(tempname, &begin) == -1 || S_ISLNK(begin.st_mode))                  if (lstat(tempname, &begin) == -1 || S_ISLNK(begin.st_mode))
                         pw_error(tempname, 1, 1);                          return (EDIT_ERROR);
                 pw_edit(1, tempname);                  pw_edit(1, tempname);
                 if (lstat(tempname, &end) == -1 || S_ISLNK(end.st_mode))                  if (lstat(tempname, &end) == -1 || S_ISLNK(end.st_mode))
                         pw_error(tempname, 1, 1);                          return (EDIT_ERROR);
                 if (begin.st_mtime == end.st_mtime &&                  if (begin.st_mtime == end.st_mtime &&
                     begin.st_size == end.st_size) {                      begin.st_size == end.st_size) {
                         warnx("no changes made");                          warnx("no changes made");
                         pw_error(NULL, 0, 0);                          return (EDIT_NOCHANGE);
                 }                  }
                 if (verify(tempname, pw))                  if (verify(tempname, pw))
                         break;                          break;
                 pw_prompt();                  pw_prompt();
         }          }
           return(EDIT_OK);
 }  }
   
 /*  /*

Legend:
Removed from v.1.22  
changed lines
  Added in v.1.23