diff options
| -rw-r--r-- | generic/tclStrToD.c | 2 | ||||
| -rw-r--r-- | generic/tclStubInit.c | 24 | ||||
| -rw-r--r-- | generic/tclTomMath.decls | 14 | ||||
| -rw-r--r-- | generic/tclTomMathDecls.h | 38 | ||||
| -rw-r--r-- | generic/tclTomMathInterface.c | 5 | ||||
| -rw-r--r-- | generic/tclZipfs.c | 38 | ||||
| -rw-r--r-- | unix/Makefile.in | 5 | ||||
| -rw-r--r-- | unix/tclUnixFile.c | 3 | ||||
| -rw-r--r-- | win/Makefile.in | 1 | ||||
| -rw-r--r-- | win/makefile.vc | 1 |
10 files changed, 61 insertions, 70 deletions
diff --git a/generic/tclStrToD.c b/generic/tclStrToD.c index 2b59913..348b0eb 100644 --- a/generic/tclStrToD.c +++ b/generic/tclStrToD.c @@ -4321,7 +4321,7 @@ TclInitDoubleConversion(void) for (i=0; i<8; ++i) { mp_sqr(pow5+i, pow5+i+1); } - mp_init_set_int(pow5_13, 1220703125); + mp_init_ul(pow5_13, 1220703125); for (i = 1; i < 5; ++i) { mp_init(pow5_13 + i); mp_sqr(pow5_13 + i - 1, pow5_13 + i); diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c index 8ab015f..ddc7fb2 100644 --- a/generic/tclStubInit.c +++ b/generic/tclStubInit.c @@ -64,22 +64,13 @@ MP_GET_MAG(mp_get_mag_ull, Tcl_WideUInt) mp_err TclBN_mp_set_int(mp_int *a, unsigned long i) { - TclBN_mp_set_ul(a, i); + mp_set_ul(a, i); return MP_OKAY; } -mp_err TclBN_mp_init_set_int(mp_int *a, unsigned long i) -{ - mp_err result = mp_init(a); - if (result == MP_OKAY) { - TclBN_mp_set_ul(a, i); - } - return result; -} - static mp_err TclBN_mp_set_long(mp_int *a, unsigned long i) { - TclBN_mp_set_ul(a, i); + mp_set_ul(a, i); return MP_OKAY; } @@ -175,9 +166,6 @@ static int exprIntObj(Tcl_Interp *interp, Tcl_Obj*expr, int *ptr){ #endif /* __CYGWIN__ */ -#undef TclBN_mp_unsigned_bin_size -#define TclBN_mp_unsigned_bin_size (int (*)(const mp_int *a)) mp_ubin_size - /* * WARNING: The contents of this file is automatically generated by the * tools/genStubs.tcl script. Any modifications to the function declarations @@ -625,7 +613,7 @@ const TclTomMathStubs tclTomMathStubs = { 0, /* 44 */ 0, /* 45 */ 0, /* 46 */ - TclBN_mp_unsigned_bin_size, /* 47 */ + 0, /* 47 */ TclBN_mp_xor, /* 48 */ TclBN_mp_zero, /* 49 */ 0, /* 50 */ @@ -639,8 +627,8 @@ const TclTomMathStubs tclTomMathStubs = { 0, /* 58 */ 0, /* 59 */ 0, /* 60 */ - TclBN_mp_init_set_int, /* 61 */ - TclBN_mp_set_int, /* 62 */ + TclBN_mp_init_ul, /* 61 */ + TclBN_mp_set_ul, /* 62 */ TclBN_mp_cnt_lsb, /* 63 */ 0, /* 64 */ 0, /* 65 */ @@ -648,7 +636,7 @@ const TclTomMathStubs tclTomMathStubs = { 0, /* 67 */ TclBN_mp_set_ull, /* 68 */ TclBN_mp_get_mag_ull, /* 69 */ - TclBN_mp_set_ul, /* 70 */ + 0, /* 70 */ TclBN_mp_get_mag_ul, /* 71 */ TclBN_mp_isodd, /* 72 */ 0, /* 73 */ diff --git a/generic/tclTomMath.decls b/generic/tclTomMath.decls index 753ebca..74ccd22 100644 --- a/generic/tclTomMath.decls +++ b/generic/tclTomMath.decls @@ -168,9 +168,10 @@ declare 43 { #declare 46 { # mp_err TclBN_mp_toradix_n(const mp_int *a, char *str, int radix, int maxlen) #} -declare 47 { - int TclBN_mp_unsigned_bin_size(const mp_int *a) -} +# Removed in 9.0 +#declare 47 {deprecated {Use mp_ubin_size}} { +# int TclBN_mp_unsigned_bin_size(const mp_int *a) +#} declare 48 { mp_err TclBN_mp_xor(const mp_int *a, const mp_int *b, mp_int *c) } @@ -178,10 +179,10 @@ declare 49 { void TclBN_mp_zero(mp_int *a) } declare 61 { - mp_err TclBN_mp_init_set_int(mp_int *a, unsigned long i) + mp_err TclBN_mp_init_ul(mp_int *a, unsigned long i) } declare 62 { - mp_err TclBN_mp_set_int(mp_int *a, unsigned long i) + void TclBN_mp_set_ul(mp_int *a, unsigned long i) } declare 63 { int TclBN_mp_cnt_lsb(const mp_int *a) @@ -213,9 +214,6 @@ declare 68 { declare 69 { Tcl_WideUInt TclBN_mp_get_mag_ull(const mp_int *a) } -declare 70 { - void TclBN_mp_set_ul(mp_int *a, unsigned long i) -} declare 71 { unsigned long TclBN_mp_get_mag_ul(const mp_int *a) } diff --git a/generic/tclTomMathDecls.h b/generic/tclTomMathDecls.h index 20fa442..dd86c9d 100644 --- a/generic/tclTomMathDecls.h +++ b/generic/tclTomMathDecls.h @@ -90,8 +90,9 @@ #define mp_init_copy TclBN_mp_init_copy #define mp_init_multi TclBN_mp_init_multi #define mp_init_set TclBN_mp_init_set -#define mp_init_set_int TclBN_mp_init_set_int +#define mp_init_set_int(a,i) TclBN_mp_init_ul(a,(unsigned int)(i)) #define mp_init_size TclBN_mp_init_size +#define mp_init_ul TclBN_mp_init_ul #define mp_karatsuba_mul TclBN_mp_karatsuba_mul #define s_mp_karatsuba_mul TclBN_mp_karatsuba_mul #define mp_karatsuba_sqr TclBN_mp_karatsuba_sqr @@ -110,7 +111,7 @@ #define mp_read_radix TclBN_mp_read_radix #define mp_rshd TclBN_mp_rshd #define mp_set TclBN_mp_set -#define mp_set_int TclBN_mp_set_int +#define mp_set_int(a,b) (TclBN_mp_set_ul((a),((unsigned int)(b))),MP_OKAY) #define mp_set_long(a,b) (TclBN_mp_set_ul((a),(b)),MP_OKAY) #define mp_set_long_long(a,b) (TclBN_mp_set_ull((a),(b)),MP_OKAY) #define mp_set_ul TclBN_mp_set_ul @@ -136,7 +137,6 @@ #define mp_to_radix TclBN_mp_to_radix #define mp_to_ubin TclBN_mp_to_ubin #define mp_ubin_size TclBN_mp_ubin_size -#define mp_unsigned_bin_size TclBN_mp_unsigned_bin_size #define mp_xor TclBN_mp_xor #define mp_zero TclBN_mp_zero #define s_mp_add TclBN_s_mp_add @@ -296,8 +296,7 @@ EXTERN mp_err TclBN_mp_sub_d(const mp_int *a, mp_digit b, /* Slot 44 is reserved */ /* Slot 45 is reserved */ /* Slot 46 is reserved */ -/* 47 */ -EXTERN int TclBN_mp_unsigned_bin_size(const mp_int *a); +/* Slot 47 is reserved */ /* 48 */ EXTERN mp_err TclBN_mp_xor(const mp_int *a, const mp_int *b, mp_int *c); @@ -315,9 +314,9 @@ EXTERN void TclBN_mp_zero(mp_int *a); /* Slot 59 is reserved */ /* Slot 60 is reserved */ /* 61 */ -EXTERN mp_err TclBN_mp_init_set_int(mp_int *a, unsigned long i); +EXTERN mp_err TclBN_mp_init_ul(mp_int *a, unsigned long i); /* 62 */ -EXTERN mp_err TclBN_mp_set_int(mp_int *a, unsigned long i); +EXTERN void TclBN_mp_set_ul(mp_int *a, unsigned long i); /* 63 */ EXTERN int TclBN_mp_cnt_lsb(const mp_int *a); /* Slot 64 is reserved */ @@ -328,8 +327,7 @@ EXTERN int TclBN_mp_cnt_lsb(const mp_int *a); EXTERN void TclBN_mp_set_ull(mp_int *a, Tcl_WideUInt i); /* 69 */ EXTERN Tcl_WideUInt TclBN_mp_get_mag_ull(const mp_int *a); -/* 70 */ -EXTERN void TclBN_mp_set_ul(mp_int *a, unsigned long i); +/* Slot 70 is reserved */ /* 71 */ EXTERN unsigned long TclBN_mp_get_mag_ul(const mp_int *a); /* 72 */ @@ -401,7 +399,7 @@ typedef struct TclTomMathStubs { void (*reserved44)(void); void (*reserved45)(void); void (*reserved46)(void); - int (*tclBN_mp_unsigned_bin_size) (const mp_int *a); /* 47 */ + void (*reserved47)(void); mp_err (*tclBN_mp_xor) (const mp_int *a, const mp_int *b, mp_int *c); /* 48 */ void (*tclBN_mp_zero) (mp_int *a); /* 49 */ void (*reserved50)(void); @@ -415,8 +413,8 @@ typedef struct TclTomMathStubs { void (*reserved58)(void); void (*reserved59)(void); void (*reserved60)(void); - mp_err (*tclBN_mp_init_set_int) (mp_int *a, unsigned long i); /* 61 */ - mp_err (*tclBN_mp_set_int) (mp_int *a, unsigned long i); /* 62 */ + mp_err (*tclBN_mp_init_ul) (mp_int *a, unsigned long i); /* 61 */ + void (*tclBN_mp_set_ul) (mp_int *a, unsigned long i); /* 62 */ int (*tclBN_mp_cnt_lsb) (const mp_int *a); /* 63 */ void (*reserved64)(void); void (*reserved65)(void); @@ -424,7 +422,7 @@ typedef struct TclTomMathStubs { void (*reserved67)(void); void (*tclBN_mp_set_ull) (mp_int *a, Tcl_WideUInt i); /* 68 */ Tcl_WideUInt (*tclBN_mp_get_mag_ull) (const mp_int *a); /* 69 */ - void (*tclBN_mp_set_ul) (mp_int *a, unsigned long i); /* 70 */ + void (*reserved70)(void); unsigned long (*tclBN_mp_get_mag_ul) (const mp_int *a); /* 71 */ mp_bool (*tclBN_mp_isodd) (const mp_int *a); /* 72 */ void (*reserved73)(void); @@ -540,8 +538,7 @@ extern const TclTomMathStubs *tclTomMathStubsPtr; /* Slot 44 is reserved */ /* Slot 45 is reserved */ /* Slot 46 is reserved */ -#define TclBN_mp_unsigned_bin_size \ - (tclTomMathStubsPtr->tclBN_mp_unsigned_bin_size) /* 47 */ +/* Slot 47 is reserved */ #define TclBN_mp_xor \ (tclTomMathStubsPtr->tclBN_mp_xor) /* 48 */ #define TclBN_mp_zero \ @@ -557,10 +554,10 @@ extern const TclTomMathStubs *tclTomMathStubsPtr; /* Slot 58 is reserved */ /* Slot 59 is reserved */ /* Slot 60 is reserved */ -#define TclBN_mp_init_set_int \ - (tclTomMathStubsPtr->tclBN_mp_init_set_int) /* 61 */ -#define TclBN_mp_set_int \ - (tclTomMathStubsPtr->tclBN_mp_set_int) /* 62 */ +#define TclBN_mp_init_ul \ + (tclTomMathStubsPtr->tclBN_mp_init_ul) /* 61 */ +#define TclBN_mp_set_ul \ + (tclTomMathStubsPtr->tclBN_mp_set_ul) /* 62 */ #define TclBN_mp_cnt_lsb \ (tclTomMathStubsPtr->tclBN_mp_cnt_lsb) /* 63 */ /* Slot 64 is reserved */ @@ -571,8 +568,7 @@ extern const TclTomMathStubs *tclTomMathStubsPtr; (tclTomMathStubsPtr->tclBN_mp_set_ull) /* 68 */ #define TclBN_mp_get_mag_ull \ (tclTomMathStubsPtr->tclBN_mp_get_mag_ull) /* 69 */ -#define TclBN_mp_set_ul \ - (tclTomMathStubsPtr->tclBN_mp_set_ul) /* 70 */ +/* Slot 70 is reserved */ #define TclBN_mp_get_mag_ul \ (tclTomMathStubsPtr->tclBN_mp_get_mag_ul) /* 71 */ #define TclBN_mp_isodd \ diff --git a/generic/tclTomMathInterface.c b/generic/tclTomMathInterface.c index 55530ab..eb012e4 100644 --- a/generic/tclTomMathInterface.c +++ b/generic/tclTomMathInterface.c @@ -112,11 +112,12 @@ TclInitBignumFromWideInt( Tcl_WideInt v) /* Initial value */ { if (mp_init(a) != MP_OKAY) { - Tcl_Panic("initialization failure in TclInitBignumFromWideInt"); + wipanic: + Tcl_Panic("initialization failure in TclInitBignumFromWideInt"); } if (v < (Tcl_WideInt)0) { mp_set_ull(a, (Tcl_WideUInt)(-v)); - mp_neg(a, a); + if (mp_neg(a, a) != MP_OKAY) goto wipanic; } else { mp_set_ull(a, (Tcl_WideUInt)v); } diff --git a/generic/tclZipfs.c b/generic/tclZipfs.c index caf9359..9135eae 100644 --- a/generic/tclZipfs.c +++ b/generic/tclZipfs.c @@ -277,13 +277,15 @@ static struct { Tcl_HashTable zipHash; /* Mount to ZipFile mapping */ } ZipFS = { 0, 0, 0, DEFAULT_WRITE_MAX_SIZE, 0, + {0,{0,0,0,0},0,0,0,0,0,0,0,0,0}, + {0,{0,0,0,0},0,0,0,0,0,0,0,0,0} }; /* * For password rotation. */ -static const char pwrot[16] = +static const char pwrot[17] = "\x00\x80\x40\xC0\x20\xA0\x60\xE0" "\x10\x90\x50\xD0\x30\xB0\x70\xF0"; @@ -1873,7 +1875,7 @@ TclZipfs_Unmount( static int ZipFSMountObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -1907,7 +1909,7 @@ ZipFSMountObjCmd( static int ZipFSMountBufferObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -1959,7 +1961,7 @@ ZipFSMountBufferObjCmd( static int ZipFSRootObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -1986,7 +1988,7 @@ ZipFSRootObjCmd( static int ZipFSUnmountObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2017,7 +2019,7 @@ ZipFSUnmountObjCmd( static int ZipFSMkKeyObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2796,7 +2798,7 @@ ZipFSMkZipOrImgObjCmd( static int ZipFSMkZipObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2816,7 +2818,7 @@ ZipFSMkZipObjCmd( static int ZipFSLMkZipObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2853,7 +2855,7 @@ ZipFSLMkZipObjCmd( static int ZipFSMkImgObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2874,7 +2876,7 @@ ZipFSMkImgObjCmd( static int ZipFSLMkImgObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2911,7 +2913,7 @@ ZipFSLMkImgObjCmd( static int ZipFSCanonicalObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -2967,7 +2969,7 @@ ZipFSCanonicalObjCmd( static int ZipFSExistsObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -3020,7 +3022,7 @@ ZipFSExistsObjCmd( static int ZipFSInfoObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -3070,7 +3072,7 @@ ZipFSInfoObjCmd( static int ZipFSListObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -3267,7 +3269,7 @@ TclZipfs_TclLibrary(void) static int ZipFSTclLibraryObjCmd( - void *clientData, /* Not used. */ + void *dummy, /* Not used. */ Tcl_Interp *interp, /* Current interpreter. */ int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ @@ -3302,7 +3304,7 @@ ZipFSTclLibraryObjCmd( static int ZipChannelClose( void *instanceData, - Tcl_Interp *interp) /* Current interpreter. */ + Tcl_Interp *dummy) /* Current interpreter. */ { ZipChannel *info = instanceData; @@ -4152,7 +4154,7 @@ ZipFSFilesystemSeparatorProc( static int ZipFSMatchInDirectoryProc( - Tcl_Interp *interp, /* Current interpreter. */ + Tcl_Interp *dummy, /* Current interpreter. */ Tcl_Obj *result, Tcl_Obj *pathPtr, const char *pattern, @@ -4342,7 +4344,7 @@ ZipFSMatchInDirectoryProc( static int ZipFSPathInFilesystemProc( Tcl_Obj *pathPtr, - void **clientDataPtr) + void **dummy) { Tcl_HashEntry *hPtr; Tcl_HashSearch search; diff --git a/unix/Makefile.in b/unix/Makefile.in index b21d81e..0e0249e 100644 --- a/unix/Makefile.in +++ b/unix/Makefile.in @@ -329,7 +329,7 @@ TOMMATH_OBJS = bn_s_mp_reverse.o bn_s_mp_mul_digs_fast.o \ bn_mp_div_2d.o bn_mp_div_3.o bn_mp_exch.o bn_mp_expt_u32.o \ bn_s_mp_get_bit.o bn_mp_get_mag_ul.o bn_mp_grow.o bn_mp_init.o \ bn_mp_init_copy.o bn_mp_init_multi.o bn_mp_init_set.o \ - bn_mp_init_size.o bn_s_mp_karatsuba_mul.o \ + bn_mp_init_size.o bn_mp_init_ul.o bn_s_mp_karatsuba_mul.o \ bn_s_mp_karatsuba_sqr.o bn_s_mp_balance_mul.o bn_mp_isodd.o \ bn_mp_lshd.o bn_mp_mod.o bn_mp_mod_2d.o bn_mp_mul.o bn_mp_mul_2.o \ bn_mp_mul_2d.o bn_mp_mul_d.o bn_mp_neg.o bn_mp_or.o \ @@ -1635,6 +1635,9 @@ bn_mp_init_set.o: $(TOMMATH_DIR)/bn_mp_init_set.c $(MATHHDRS) bn_mp_init_size.o:$(TOMMATH_DIR)/bn_mp_init_size.c $(MATHHDRS) $(CC) -c $(CC_SWITCHES) $(TOMMATH_DIR)/bn_mp_init_size.c +bn_mp_init_ul.o:$(TOMMATH_DIR)/bn_mp_init_ul.c $(MATHHDRS) + $(CC) -c $(CC_SWITCHES) $(TOMMATH_DIR)/bn_mp_init_ul.c + bn_s_mp_karatsuba_mul.o: $(TOMMATH_DIR)/bn_s_mp_karatsuba_mul.c $(MATHHDRS) $(CC) -c $(CC_SWITCHES) $(TOMMATH_DIR)/bn_s_mp_karatsuba_mul.c diff --git a/unix/tclUnixFile.c b/unix/tclUnixFile.c index 3589253..0cc4031 100644 --- a/unix/tclUnixFile.c +++ b/unix/tclUnixFile.c @@ -270,7 +270,8 @@ TclpMatchInDirectory( Tcl_Encoding encoding = Tcl_GetEncoding(interp ,NULL); Tcl_DStringInit(&dsOrig); - dirName = TclGetStringFromObj(fileNamePtr, &dirLength); + dirName = TclGetString(fileNamePtr); + dirLength = fileNamePtr->length; Tcl_DStringAppend(&dsOrig, dirName, dirLength); /* diff --git a/win/Makefile.in b/win/Makefile.in index d5968d2..0c6aa93 100644 --- a/win/Makefile.in +++ b/win/Makefile.in @@ -387,6 +387,7 @@ TOMMATH_OBJS = \ bn_mp_init_multi.${OBJEXT} \ bn_mp_init_set.${OBJEXT} \ bn_mp_init_size.${OBJEXT} \ + bn_mp_init_ul.${OBJEXT} \ bn_mp_isodd.${OBJEXT} \ bn_mp_lshd.${OBJEXT} \ bn_mp_mod.${OBJEXT} \ diff --git a/win/makefile.vc b/win/makefile.vc index a756164..a34b611 100644 --- a/win/makefile.vc +++ b/win/makefile.vc @@ -341,6 +341,7 @@ TOMMATHOBJS = \ $(TMP_DIR)\bn_mp_init_multi.obj \
$(TMP_DIR)\bn_mp_init_set.obj \
$(TMP_DIR)\bn_mp_init_size.obj \
+ $(TMP_DIR)\bn_mp_init_ul.obj \
$(TMP_DIR)\bn_mp_isodd.obj \
$(TMP_DIR)\bn_mp_lshd.obj \
$(TMP_DIR)\bn_mp_mod.obj \
|
