continue;
}
- dfd = open(devname, O_RDONLY, 0);
+ dfd = open(devname, O_RDONLY|O_EXCL, 0);
if (dfd < 0) {
if (inargv || verbose)
fprintf(stderr, Name ": cannot open device %s: %s\n",
super.recovery_cp = 0;
}
super.sb_csum = calc_sb_csum(&super);
- dfd = open(devname, O_RDWR, 0);
+ dfd = open(devname, O_RDWR|O_EXCL, 0);
if (dfd < 0)
fprintf(stderr, Name ": Cannot open %s for superblock update\n",
devname);
devices[chosen_drive].devname, devices[chosen_drive].raid_disk,
(int)(devices[chosen_drive].events),
(int)(devices[most_recent].events));
- fd = open(devices[chosen_drive].devname, O_RDWR);
+ fd = open(devices[chosen_drive].devname, O_RDWR|O_EXCL);
if (fd < 0) {
fprintf(stderr, Name ": Couldn't open %s for write - not updating\n",
devices[chosen_drive].devname);
if (!devices[j].uptodate)
continue;
chosen_drive = j;
- if ((fd=open(devices[j].devname, O_RDONLY))< 0) {
+ if ((fd=open(devices[j].devname, O_RDONLY|O_EXCL))< 0) {
fprintf(stderr, Name ": Cannot open %s: %s\n",
devices[j].devname, strerror(errno));
return 1;
|| (old_linux && (change & 1))) {
int fd;
super.sb_csum = calc_sb_csum(&super);
- fd = open(devices[chosen_drive].devname, O_RDWR);
+ fd = open(devices[chosen_drive].devname, O_RDWR|O_EXCL);
if (fd < 0) {
fprintf(stderr, Name ": Could open %s for write - cannot Assemble array.\n",
devices[chosen_drive].devname);