ClearVolumeStats(&V_disk(newvp));
V_destroyMe(newvp) = DESTROY_ME;
V_inService(newvp) = 0;
+ if (newType == backupVolume) {
+ V_backupDate(originalvp) = V_copyDate(newvp);
+ V_backupDate(newvp) = V_copyDate(newvp);
+ }
V_inUse(newvp) = 0;
VUpdateVolume(&error, newvp);
if (error) {
ClearVolumeStats(&V_disk(clonevp));
V_destroyMe(clonevp) = 0;
V_inService(clonevp) = 0;
+ if (newType == backupVolume) {
+ V_backupDate(originalvp) = V_copyDate(clonevp);
+ V_backupDate(clonevp) = V_copyDate(clonevp);
+ }
V_inUse(clonevp) = 0;
VUpdateVolume(&error, clonevp);
if (error) {
struct pIDs *partIds;
{
char namehead[9];
- struct stat rbuf, pbuf;
int code;
char i;
strcpy(namehead, "/vicep"); /*7 including null terminator*/
-#ifdef AFS_NT40_ENV
/* Just return attached partitions. */
namehead[7] = '\0';
for (i=0; i<26; i++) {
if (VGetPartition(namehead, 0))
partIds->partIds[i] = VGetPartition(namehead, 0) ? i : -1;
}
-#else
-
- (void) stat("/",&rbuf); /*interested in buf->st_dev*/
-
- for(i = 0 ; i < 26 ; i++){
-
- namehead[6] = i + 'a';
- namehead[7] = '\0';
- code = stat(namehead,&pbuf);
- if(!code){
- if(rbuf.st_dev != pbuf.st_dev) /*the partition is mounted */
- partIds->partIds[i] = i ;
- else partIds->partIds[i ] = -1;
- }
- else partIds->partIds[i ] = -1;
- }
-#endif
+
return 0;
}
struct stat rbuf, pbuf;
char namehead[9];
struct partList partList;
- int code, i, j=0, k;
+ struct DiskPartition *dp;
+ int i, j=0, k;
strcpy(namehead, "/vicep"); /*7 including null terminator*/
-#ifdef AFS_NT40_ENV
+
+ /* Only report attached partitions */
for(i = 0 ; i < VOLMAXPARTS; i++){
if (i < 26) {
namehead[6] = i + 'a';
namehead[7] = 'a' + (k%26);
namehead[8] = '\0';
}
- code = VGetPartition(namehead, 0);
- if (code)
+ dp = VGetPartition(namehead, 0);
+ if (dp)
partList.partId[j++] = i;
}
pEntries->partEntries_val = (afs_int32 *) malloc(j * sizeof(int));
memcpy((char *)pEntries->partEntries_val, (char *)&partList, j * sizeof(int));
pEntries->partEntries_len = j;
-#else
- code = stat("/",&rbuf); /*interested in buf->st_dev*/
- for(i = 0 ; i < VOLMAXPARTS; i++){
- if (i < 26) {
- namehead[6] = i + 'a';
- namehead[7] = '\0';
- } else {
- k = i - 26;
- namehead[6] = 'a' + (k/26);
- namehead[7] = 'a' + (k%26);
- namehead[8] = '\0';
- }
- code = stat(namehead,&pbuf);
- if(!code){
- if(rbuf.st_dev != pbuf.st_dev) /*the partition is mounted */
- partList.partId[j++] = i;
- }
- }
- pEntries->partEntries_val = (afs_int32 *) malloc(j * sizeof(int));
- memcpy((char *)pEntries->partEntries_val, (char *)&partList, j * sizeof(int));
- pEntries->partEntries_len = j;
-#endif
return 0;
}