- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
static struct passwd *pd=getpwuid(st->st_uid);
if(pd==NULL){
fprintf(stderr, "no correspound user!\n");
}
char *perm=(char*)malloc(16);
if(perm==NULL){fprintf(stderr, "out of memory!\n");return -1;}
memset( perm,'\0',16);
if(st->st_mode & S_ISUID){perm[0]='s';} else perm[0]='-';
if(st->st_mode & S_IRUSR){perm[1]='r';} else perm[1]='-';
if(st->st_mode & S_IWUSR){perm[2]='w';} else perm[2]='-';
if(st->st_mode & S_IXUSR){perm[3]='x';} else perm[3]='-';
if(st->st_mode & S_IRGRP){perm[4]='r';} else perm[4]='-';
if(st->st_mode & S_IWGRP){perm[5]='w';} else perm[5]='-';
if(st->st_mode & S_IXGRP){perm[6]='x';} else perm[6]='-';
if(st->st_mode & S_IROTH){perm[7]='r';} else perm[7]='-';
if(st->st_mode & S_IWOTH){perm[8]='w';} else perm[8]='-';
if(st->st_mode & S_IXOTH){
if(st->st_mode & S_ISVTX){
perm[9]='t';
}
else perm[9]='x';
} else perm[9]='-';
if(st->st_mode & S_ISUID){
if(st->st_mode & S_IXUSR){
perm[4]='s';
} else perm[4]='S';
}
if(st->st_mode & S_ISGID){
if(st->st_mode & S_IXGRP){
perm[7]='s';
} else perm[7]='S';
}
if(st->st_mode & S_ISVTX){
if(st->st_mode & S_IXOTH){perm[9]='t';} else {
perm[9]='T';
}
}
if((st->st_mode & S_IFMT) == S_IFDIR) { perm[0]='d';}
if((st->st_mode & S_IFMT)==S_IFSOCK){ perm[0]='s';}
if((st->st_mode & S_IFMT) == S_IFCHR) { perm[0]='c';}
if((st->st_mode & S_IFMT)==S_IFCHR){perm[0]='c';} else if(st->st_mode & S_IFBLK){perm[0]='b';} else
if((st->st_mode & S_IFMT)== S_IFREG){ perm[0]='-';}
if((st->st_mode &S_IFMT)==S_IFBLK) { perm[0]='b';}
if((st->st_mode & S_IFMT)==S_IFIFO) { perm[0]='p';}
if((st->st_mode & S_IFMT)== S_IFLNK){ perm[0]='l';}
if(!S_ISDIR(st->st_mode)){
if(S_ISREG(st->st_mode)){
printf("<file type=\"regular file\" permissions=\"%s\" owner=\"%s\" group=\"%d\" size=\"%d\">%s</file>\n",perm,pd->pw_name,st->st_gid,st->st_size,dir);
return 0;
};
Lure Of Chaos 18.07.2012 01:24 # +2
rat4 18.07.2012 08:45 # +7
vistefan 18.07.2012 14:32 # +3
defecate-plusplus 18.07.2012 09:11 # +5
TarasB 18.07.2012 09:13 # +3
bormand 18.07.2012 09:19 # +3
sayidandrtfm 18.07.2012 09:56 # 0
из одного советского фильма для молодёжи:
«Рукописи не горят!»(М.Булгаков)
«Это точно»(Вася Лопотухин)
absolut 18.07.2012 10:01 # +6
AliceGoth 19.07.2012 20:32 # −2
rat4 19.07.2012 20:34 # +6