--- libaitsync/src/dir.c 2012/11/13 10:30:44 1.3.2.1 +++ libaitsync/src/dir.c 2012/11/13 13:38:14 1.3.2.2 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: dir.c,v 1.3.2.1 2012/11/13 10:30:44 misho Exp $ +* $Id: dir.c,v 1.3.2.2 2012/11/13 13:38:14 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -58,12 +58,12 @@ find_tag(int const * __restrict tags, struct tagDirNam struct tagDirName *find = NULL; register int i; - // search in index tags + /* search in index tags */ if (tags[t] != -1 && l[tags[t]].tag == t) { - // search in sorted hashes + /* search in sorted hashes */ for (i = 0; l[tags[t] + i].tag == t; i++) if (l[tags[t] + i].hash == hash) { - // finded & marked for delete! + /* finded & marked for delete! */ find = (struct tagDirName*) &l[tags[t] + i]; find->ch = '*'; break; @@ -142,16 +142,19 @@ create_diridx(const char *csDir, int lm, int *tags, st memset(&l[n + 1], 0, sizeof(struct tagDirName)); l[n].ch = '<'; - l[n].tag = crcFletcher16((u_short*) d.d_name, d.d_namlen / 2 + d.d_namlen % 2); + l[n].tag = crcFletcher16((u_short*) d.d_name, + d.d_namlen / 2 + d.d_namlen % 2); l[n].hash = crcAdler((u_char*) d.d_name, d.d_namlen); strlcpy(l[n].name, d.d_name, MAXPATHLEN); if (lm & 1) { if (lstat(d.d_name, &sb) != -1) { memset(szStr, 0, STRSIZ); #if defined(__OpenBSD__) - strftime(szStr, STRSIZ, "%Y-%m-%d %H:%M:%S", localtime((time_t*) &sb.st_mtim)); + strftime(szStr, STRSIZ, "%Y-%m-%d %H:%M:%S", + localtime((time_t*) &sb.st_mtim)); #else - strftime(szStr, STRSIZ, "%Y-%m-%d %H:%M:%S", localtime((time_t*) &sb.st_mtime)); + strftime(szStr, STRSIZ, "%Y-%m-%d %H:%M:%S", + localtime((time_t*) &sb.st_mtime)); #endif switch (d.d_type) { case DT_FIFO: @@ -186,9 +189,11 @@ create_diridx(const char *csDir, int lm, int *tags, st strlcpy(szType, "unknown", STRSIZ); break; } - snprintf(l[n].extra, STRSIZ, "%s links=%d inode=%ld %d:%d perm=0%o size=%ld %s", - szType, sb.st_nlink, (long) sb.st_ino, sb.st_uid, sb.st_gid, - sb.st_mode & 0x1fff, (long) sb.st_size, szStr); + snprintf(l[n].extra, STRSIZ, + "%s links=%d inode=%ld %d:%d perm=0%o size=%ld %s", + szType, sb.st_nlink, (long) sb.st_ino, + sb.st_uid, sb.st_gid, sb.st_mode & 0x1fff, + (long) sb.st_size, szStr); } } @@ -207,16 +212,17 @@ create_diridx(const char *csDir, int lm, int *tags, st return n; } -// ------------------------------------------------------ +/* ------------------------------------------------------ */ /* - * sync_dirCSum() Calculate checksum of directory + * sync_dirChkSum() - Calculate checksum of directory + * * @csDir = Directory - * @md = Message digest allocated memory, must be free after use! + * @md = Message digest allocated memory, must be free() after use! * return: -1 error or !=-1 ok */ int -sync_dirCSum(const char *csDir, u_char **md) +sync_dirChkSum(const char *csDir, u_char **md) { DIR *dir; struct dirent d, *pd; @@ -251,7 +257,8 @@ sync_dirCSum(const char *csDir, u_char **md) } /* - * sync_dircmp() Compare directories + * sync_dircmp() - Compare directories + * * @csDir1 = Directory 1 * @csDir2 = Directory 2 * return: -1 error, 0 is equal or 1 different @@ -265,9 +272,9 @@ sync_dircmp(const char *csDir1, const char *csDir2) if (!csDir1 || !csDir2) return ret; - if (sync_dirCSum(csDir1, &md[0]) == -1) + if (sync_dirChkSum(csDir1, &md[0]) == -1) return ret; - if (sync_dirCSum(csDir2, &md[1]) == -1) { + if (sync_dirChkSum(csDir2, &md[1]) == -1) { free(md[0]); return ret; } @@ -283,11 +290,12 @@ sync_dircmp(const char *csDir1, const char *csDir2) } /* - * sync_dircmpList() Compare directories or directory and file list + * sync_dircmpList() - Compare directories or directory and file list + * * @csDir1 = Directory 1 * @csDir2 = Directory 2 or File list, if "-" get input from console - * @lm = Long mode options, 1 long output - * @list = Output diff list, after use must be free! + * @lm = Long mode options, !=NULL long output + * @list = Output diff list, after use must be free()! * return: -1 error, 0 is equal or >0 count of returned list items */ int @@ -345,7 +353,7 @@ sync_dircmpList(const char *csDir1, const char *csDir2 } find = find_tag(tags, l, t, hash); - // element not find in dir1, added + /* element not find in dir1, added */ if (!find) { l = realloc(l, sizeof(struct tagDirName) * (n + 2)); if (!l) { @@ -405,9 +413,10 @@ sync_dircmpList(const char *csDir1, const char *csDir2 break; } snprintf(l[n].extra, STRSIZ, - "%s links=%d inode=%ld %d:%d perm=0%o size=%ld %s", - szType, sb.st_nlink, (long) sb.st_ino, sb.st_uid, - sb.st_gid, sb.st_mode & 0x1fff, (long) sb.st_size, + "%s links=%d inode=%ld %d:%d perm=0%o " + "size=%ld %s", szType, sb.st_nlink, + (long) sb.st_ino, sb.st_uid, sb.st_gid, + sb.st_mode & 0x1fff, (long) sb.st_size, szStr); } } @@ -444,7 +453,7 @@ sync_dircmpList(const char *csDir1, const char *csDir2 } find = find_tag(tags, l, t, hash); - // element not find in dir1, added + /* element not find in dir1, added */ if (!find) { l = realloc(l, sizeof(struct tagDirName) * (n + 2)); if (!l) { @@ -469,7 +478,7 @@ sync_dircmpList(const char *csDir1, const char *csDir2 fclose(f); } - // delete equal elemets !!! + /* delete equal elemets !!! */ for (i = cx = 0; i < n; i++) if (l[i].ch == '*') { memmove(&l[i], &l[i + 1], (n - i + 1) * sizeof(struct tagDirName));