… | |
… | |
53 | #include <uudeview.h> |
53 | #include <uudeview.h> |
54 | #include <uuint.h> |
54 | #include <uuint.h> |
55 | #include <fptools.h> |
55 | #include <fptools.h> |
56 | #include <uustring.h> |
56 | #include <uustring.h> |
57 | |
57 | |
58 | char * uunconc_id = "$Id: uunconc.c,v 1.23 2020/02/27 04:05:44 root Exp $"; |
58 | char * uunconc_id = "$Id: uunconc.c,v 1.24 2020/02/27 06:14:29 root Exp $"; |
59 | |
59 | |
60 | /* for braindead systems */ |
60 | /* for braindead systems */ |
61 | #ifndef SEEK_SET |
61 | #ifndef SEEK_SET |
62 | #ifdef L_BEGIN |
62 | #ifdef L_BEGIN |
63 | #define SEEK_SET L_BEGIN |
63 | #define SEEK_SET L_BEGIN |
… | |
… | |
953 | { |
953 | { |
954 | char *line, *oline=uuncdp_oline; |
954 | char *line, *oline=uuncdp_oline; |
955 | int warning=0, vlc=0, lc[2], hadct=0; |
955 | int warning=0, vlc=0, lc[2], hadct=0; |
956 | int tc=0, tf=0, vflag, haddata=0, haddh=0; |
956 | int tc=0, tf=0, vflag, haddata=0, haddh=0; |
957 | long yefilesize=0, yepartends=0, yenotlastpart=0; |
957 | long yefilesize=0, yepartends=0, yenotlastpart=0; |
958 | crc32_t yepartcrc=crc32(0L, Z_NULL, 0); |
958 | crc32_t yepartcrc=CRC32_INIT; |
959 | static crc32_t yefilecrc=0; |
959 | static crc32_t yefilecrc=0; |
960 | static int bhflag=0; |
960 | static int bhflag=0; |
961 | size_t count=0; |
961 | size_t count=0; |
962 | size_t yepartsize=0; |
962 | size_t yepartsize=0; |
963 | char *ptr; |
963 | char *ptr; |
964 | |
964 | |
965 | if (datain == NULL || dataout == NULL) { |
965 | if (datain == NULL || dataout == NULL) { |
966 | yefilecrc = crc32(0L, Z_NULL, 0); |
966 | yefilecrc = CRC32_INIT; |
967 | bhflag = 0; |
967 | bhflag = 0; |
968 | return UURET_OK; |
968 | return UURET_OK; |
969 | } |
969 | } |
970 | |
970 | |
971 | /* |
971 | /* |
… | |
… | |
1201 | |
1201 | |
1202 | if (vflag == method) { |
1202 | if (vflag == method) { |
1203 | if (tf) { |
1203 | if (tf) { |
1204 | count = UUDecodeLine (line, oline, method); |
1204 | count = UUDecodeLine (line, oline, method); |
1205 | if (method == YENC_ENCODED) { |
1205 | if (method == YENC_ENCODED) { |
1206 | yepartcrc = crc32(yepartcrc, oline, count); |
1206 | yepartcrc = uu_crc32(yepartcrc, oline, count); |
1207 | yefilecrc = crc32(yefilecrc, oline, count); |
1207 | yefilecrc = uu_crc32(yefilecrc, oline, count); |
1208 | yepartsize += count; |
1208 | yepartsize += count; |
1209 | } |
1209 | } |
1210 | vlc++; lc[1]++; |
1210 | vlc++; lc[1]++; |
1211 | } |
1211 | } |
1212 | else if (tc == 3) { |
1212 | else if (tc == 3) { |