diff options
author | Andrew Tridgell <tridge@samba.org> | 1996-07-02 06:02:36 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1996-07-02 06:02:36 +0000 |
commit | b98c7b81d2ca9191394a2fb47c7822de031f59c0 (patch) | |
tree | 3ff6b8cb43df1801171f35e2ec7c847eecb93087 /checksum.c | |
parent | 73545f2ccb49d1bbada4240d1344041ecdc6c0ff (diff) | |
download | android_external_rsync-b98c7b81d2ca9191394a2fb47c7822de031f59c0.tar.gz android_external_rsync-b98c7b81d2ca9191394a2fb47c7822de031f59c0.tar.bz2 android_external_rsync-b98c7b81d2ca9191394a2fb47c7822de031f59c0.zip |
save some more bytes by making the checksum smaller
Diffstat (limited to 'checksum.c')
-rw-r--r-- | checksum.c | 24 |
1 files changed, 5 insertions, 19 deletions
@@ -24,6 +24,7 @@ int csum_length=SUM_LENGTH; #define CSUM_CHUNK 64 int checksum_seed = 0; +extern int remote_version; /* a simple 32 bit checksum that can be upadted from either end @@ -127,6 +128,10 @@ void file_checksum(char *fname,char *sum,off_t size) void checksum_init(void) { + if (remote_version >= 14) + csum_length = 2; /* adaptive */ + else + csum_length = SUM_LENGTH; } @@ -180,22 +185,3 @@ void sum_end(char *sum) } -#ifdef CHECKSUM_MAIN - int main(int argc,char *argv[]) -{ - char sum[SUM_LENGTH]; - int i,j; - - checksum_init(); - - for (i=1;i<argc;i++) { - struct stat st; - if (stat(argv[i],&st) == 0) { - file_checksum(argv[i],sum,st.st_size); - for (j=0;j<SUM_LENGTH;j++) - printf("%02X",(unsigned char)sum[j]); - printf(" %s\n",argv[i]); - } - } -} -#endif |