1. 21 6月, 2000 1 次提交
    • D
      · 7ef82068
      Dr. Stephen Henson 提交于
      Handle ASN1_SET_OF and PKCS12_STACK_OF using function
      casts in the same way as STACK_OF.
      7ef82068
  2. 20 6月, 2000 1 次提交
  3. 18 6月, 2000 2 次提交
  4. 17 6月, 2000 1 次提交
    • D
      Safe stack reorganisation in terms of function casts. · 3aceb94b
      Dr. Stephen Henson 提交于
      After some messing around this seems to work but needs
      a few more tests. Working out the syntax for sk_set_cmp_func()
      (cast it to a function that itself returns a function pointer)
      was painful :-(
      
      Needs some testing to see what other compilers think of this
      syntax.
      
      Also needs similar stuff for ASN1_SET_OF etc etc.
      3aceb94b
  5. 01 6月, 2000 2 次提交
    • G
      This change will cause builds (by default) to not use different STACK · e41c8d6a
      Geoff Thorpe 提交于
      structures and functions for each stack type. The previous behaviour
      can be enabled by configuring with the "-DDEBUG_SAFESTACK" option.
      This will also cause "make update" (mkdef.pl in particular) to
      update the libeay.num and ssleay.num symbol tables with the number of
      extra functions DEBUG_SAFESTACK creates.
      
      The way this change works is to accompany each DECLARE_STACK_OF()
      macro with a set of "#define"d versions of the sk_##type##_***
      functions that ensures all the existing "type-safe" stack calls are
      precompiled into the underlying stack calls. The presence or abscence
      of the DEBUG_SAFESTACK symbol controls whether this block of
      "#define"s or the DECLARE_STACK_OF() macro is taking effect. The
      block of "#define"s is in turn generated and maintained by a perl
      script (util/mkstack.pl) that encompasses the block with delimiting
      C comments. This works in a similar way to the auto-generated error
      codes and, like the other such maintenance utilities, is invoked
      by the "make update" target.
      
      A long (but mundane) commit will follow this with the results of
      "make update" - this will include all the "#define" blocks for
      each DECLARE_STACK_OF() statement, along with stripped down
      libeay.num and ssleay.num files.
      e41c8d6a
    • G
      This is the first of two commits (didn't want to dump them all into the · 7bb70435
      Geoff Thorpe 提交于
      same one). However, the first will temporarily break things until the
      second comes through. :-)
      
      The safestack.h handling was mapping compare callbacks that externally
      are of the type (int (*)(type **,type **)) into the underlying callback
      type used by stack.[ch], which is (int (*)(void *,void *)). After some
      degree of digging, it appears that the callback type in the underlying
      stack code should use double pointers too - when the compare operations
      are invoked (from sk_find and sk_sort), they are being used by bsearch
      and qsort to compare two pointers to pointers. This change corrects the
      prototyping (by only casting to the (void*,void*) form at the moment
      it is needed by bsearch and qsort) and makes the mapping in safestack.h
      more transparent. It also changes from "void*" to "char*" to stay in
      keeping with stack.[ch]'s assumed base type of "char".
      
      Also - the "const" situation was that safestack.h was throwing away
      "const"s, and to compound the problem - a close examination of stack.c
      showed that (const char **) is not really achieving what it is supposed
      to when the callback is being invoked, what is needed is
      (const char * const *). So the underlying stack.[ch] and the mapping
      macros in safestack.h have all been altered to correct this.
      
      What will follow are the vast quantities of "const" corrections required
      in stack-dependant code that was being let "slip" through when
      safestack.h was discarding "const"s. These now all come up as compiler
      warnings.
      7bb70435
  6. 17 5月, 2000 1 次提交
  7. 16 5月, 2000 1 次提交
  8. 30 5月, 1999 1 次提交
  9. 19 5月, 1999 1 次提交
  10. 04 5月, 1999 2 次提交
  11. 03 5月, 1999 1 次提交
  12. 02 5月, 1999 1 次提交
  13. 24 4月, 1999 1 次提交
  14. 20 4月, 1999 1 次提交
  15. 13 4月, 1999 1 次提交