#define FILE3 "/etc/group"
#define SUFFIX ".rpmnew"
+/* maybe "-" or sth? */
+#define BACKUP ".old"
/* #define SILENT */
return 0;
}
-int join(const char *old_name, const char *new_name)
+int join(const char *old_name, const char *new_name, const char *backup_name)
{
char *old, *new, *id;
int i, fd;
old = map_file(old_name, &old_sz);
if (old == NULL)
fatal("cannot mmap old");
-
+
+ fd = open(backup_name, O_WRONLY|O_CREAT|O_TRUNC, 0600);
+ if (fd < 0)
+ fatal("cannot make backup");
+ write(fd, old, old_sz);
+ close(fd);
+
#ifndef SILENT
eputs("marging contest of `");
eputs(old_name);