The unified diff between revisions [680184b3..] and [1ab29301..] is displayed below. It can also be downloaded as a raw diff.
#
#
# rename "Attic/misc/gtk/GNUmakefile"
# to "Attic/misc/gtk/Makefile"
#
# patch "Attic/checks/check.cpp"
# from [0d02e5ec66b09896d807c65c15227341bc163fff]
# to [73acdead18be7ece2112d96d83ea125593322960]
#
# patch "Attic/checks/getopt.cpp"
# from [32c4280c8341ffb0d8cb6c25366d2bdbff5cef3a]
# to [47acae93d069ef558e34bba575cd03079b2ba31c]
#
# patch "Attic/checks/getopt.h"
# from [31f5543404651ebf13c2eb67a896b9dd89b38bc6]
# to [c5c2fc58b021e91133898e30742cf6078fd96e1d]
#
# patch "Attic/checks/pk_bench.cpp"
# from [b582c96d8ff536e33d520bc93c2089515f88c880]
# to [35b3cb0885e93f496427f3e742a3627daf7d202a]
#
# patch "Attic/configure.pl"
# from [1abd92d286db7a648c92e655b9f640ce2cc5706f]
# to [c54756992630666254605641134fcc0c56f5f337]
#
# patch "Attic/doc/log.txt"
# from [d75bc0744e1a390fde91e8b7a322801a77750032]
# to [c835983bdf8864f607bf4dd57a1b2d699a1158a2]
#
# patch "Attic/misc/config/arch/amd64"
# from [3bda1ee7f9267f5af7c95766e9eee95c7e5dbb5d]
# to [e99af0aae34e6c83886d5386e79380471b977fe9]
#
# patch "Attic/misc/config/cc/ekopath"
# from [fcbf959e44c10427ea1868d5193271c8a9916b07]
# to [54df4f6c355b56ff537db7e429024428da3a6300]
#
# patch "Attic/misc/config/cc/gcc"
# from [b8325689146701fd42f035c20d39185cdc5772a6]
# to [53a2886a580529bc110fa57601059c7e335807ea]
#
# patch "Attic/misc/gtk/Makefile"
# from [d52f8093982af036e6df3cee4635b90f7eac7a1b]
# to [10999a0650770e6880072f29726dcb3c7e30f143]
#
# patch "Attic/misc/python/src/pk.cpp"
# from [9c722a74d36029b3a202e0671d31c49ac9e62104]
# to [2fe597d3617538be1f7c2b447be091db87c7b1ee]
#
# patch "Attic/modules/alg_amd64/modinfo.txt"
# from [83447af5a29d3658432b2743cac69524880f749e]
# to [d73e9033b08859e5e94970c0beafae394437ce0f]
#
# patch "Attic/modules/alg_ia32/modinfo.txt"
# from [b3acc5a44e02b99f69e4916e957a48dfa8b008d8]
# to [95bbfd7319fdc36a8a2f5fe843001a53bbaf55af]
#
# patch "Attic/modules/comp_bzip2/bzip2.cpp"
# from [eeaa5981f9ccc3f6bb9c1a7f9c274da27b8fca6b]
# to [9428fd47a6b3a8ef3e36048fc746becea6e0f50e]
#
# patch "Attic/modules/comp_zlib/zlib.cpp"
# from [d3fba64825d528376f05abfbed84d8b60c979b22]
# to [6c9406aff51381ad31d0624b76e5be347207dfc4]
#
# patch "Attic/modules/eng_gmp/gmp_mem.cpp"
# from [b0395a39eb4fa971b420d41d189fe0fb1d6d3980]
# to [c8f90c432a0cd8a842a2ddc38b8b1b3c9c944153]
#
# patch "Attic/readme.txt"
# from [3aa822b0912a9b71bd4adc097f98443b96f717f5]
# to [03d624dc2b7958f3d790715aedc0ea71385e1878]
#
# patch "make_prm.cpp"
# from [e9f4a2387ea8bd55d93d4c93ba73fc8ebf028212]
# to [133075e517d2f68f4b4370fdae3898422c33a5d6]
#
============================================================
--- Attic/checks/check.cpp 0d02e5ec66b09896d807c65c15227341bc163fff
+++ Attic/checks/check.cpp 73acdead18be7ece2112d96d83ea125593322960
@@ -27,7 +27,6 @@ int validate();
void bench_pk(const std::string&, bool html, double seconds);
u32bit bench_algo(const std::string&, double);
int validate();
-void print_help();
int main(int argc, char* argv[])
{
@@ -37,13 +36,23 @@ int main(int argc, char* argv[])
"benchmark|bench-type=|bench-algo=|seconds=");
opts.parse(argv);
- std::string init_flags = (opts.is_set("init") ? opts.value("init") : "");
-
- Botan::InitializerOptions init_options(init_flags);
+ Botan::InitializerOptions init_options(opts.value_if_set("init"));
Botan::LibraryInitializer init(init_options);
if(opts.is_set("help") || argc <= 1)
- { print_help(); return 1; }
+ {
+ std::cerr << Botan::version_string() << " test driver\n"
+ << "Options:\n"
+ << " --validate: Check test vectors\n"
+ << " --benchmark: Benchmark everything\n"
+ << " --bench-type={block,mode,stream,hash,mac,rng,pk}:\n"
+ << " Benchmark only algorithms of a particular type\n"
+ << " --html: Produce HTML output for benchmarks\n"
+ << " --seconds=n: Benchmark for n seconds\n"
+ << " --help: Print this message\n";
+ return 1;
+ }
+
if(opts.is_set("validate"))
return validate();
@@ -117,19 +126,6 @@ int main(int argc, char* argv[])
return 0;
}
-void print_help()
- {
- std::cout << Botan::version_string() << " test driver" << std::endl
- << "Usage:\n"
- << " --validate: Check test vectors\n"
- << " --benchmark: Benchmark everything\n"
- << " --bench-type={block,mode,stream,hash,mac,rng,pk}:\n"
- << " Benchmark only algorithms of a particular type\n"
- << " --html: Produce HTML output for benchmarks\n"
- << " --seconds=n: Benchmark for n seconds\n"
- << " --help: Print this message\n";
- }
-
int validate()
{
void test_types();
============================================================
--- Attic/checks/getopt.cpp 32c4280c8341ffb0d8cb6c25366d2bdbff5cef3a
+++ Attic/checks/getopt.cpp 47acae93d069ef558e34bba575cd03079b2ba31c
@@ -12,7 +12,8 @@ OptionParser::OptionParser(const std::st
flags.push_back(OptionFlag(opts[j]));
}
-OptionParser::OptionFlag OptionParser::find_option(const std::string& name) const
+OptionParser::OptionFlag
+OptionParser::find_option(const std::string& name) const
{
for(size_t j = 0; j != flags.size(); j++)
if(flags[j].name() == name)
@@ -33,6 +34,11 @@ std::string OptionParser::value(const st
return i->second;
}
+std::string OptionParser::value_if_set(const std::string& key) const
+ {
+ return is_set(key) ? value(key) : "";
+ }
+
void OptionParser::parse(char* argv[])
{
std::vector<std::string> args;
============================================================
--- Attic/checks/getopt.h 31f5543404651ebf13c2eb67a896b9dd89b38bc6
+++ Attic/checks/getopt.h c5c2fc58b021e91133898e30742cf6078fd96e1d
@@ -11,7 +11,9 @@ class OptionParser
public:
std::vector<std::string> leftovers() const { return leftover; }
bool is_set(const std::string&) const;
+
std::string value(const std::string&) const;
+ std::string value_if_set(const std::string&) const;
void parse(char*[]);
OptionParser(const std::string&);
============================================================
--- Attic/checks/pk_bench.cpp b582c96d8ff536e33d520bc93c2089515f88c880
+++ Attic/checks/pk_bench.cpp 35b3cb0885e93f496427f3e742a3627daf7d202a
@@ -264,11 +264,10 @@ void print_result(bool html, u32bit runs
{
std::cout << " <TR><TH>" << algo_name << " (" << op << ") <TH>";
-#if PRINT_MS_PER_OP
- std::cout << mseconds_per_run;
-#else
- std::cout << runs_per_sec;
-#endif
+ if(PRINT_MS_PER_OP)
+ std::cout << mseconds_per_run;
+ else
+ std::cout << runs_per_sec;
std::cout << std::endl;
}
@@ -279,11 +278,10 @@ void print_result(bool html, u32bit runs
std::cout.setf(std::ios::fixed, std::ios::floatfield);
std::cout.precision(2);
-#if PRINT_MS_PER_OP
- std::cout << mseconds_per_run << " ms / " << op << std::endl;
-#else
- std::cout << runs_per_sec << " ops / second (" << op << ")" << std::endl;
-#endif
+ if(PRINT_MS_PER_OP)
+ std::cout << mseconds_per_run << " ms / " << op << std::endl;
+ else
+ std::cout << runs_per_sec << " ops / second (" << op << ")" << std::endl;
}
}
============================================================
--- Attic/configure.pl 1abd92d286db7a648c92e655b9f640ce2cc5706f
+++ Attic/configure.pl c54756992630666254605641134fcc0c56f5f337
@@ -9,7 +9,7 @@ my $MINOR_VERSION = 5;
my $MAJOR_VERSION = 1;
my $MINOR_VERSION = 5;
-my $PATCH_VERSION = 12;
+my $PATCH_VERSION = 13;
my $VERSION_STRING = "$MAJOR_VERSION.$MINOR_VERSION.$PATCH_VERSION";
============================================================
--- Attic/doc/log.txt d75bc0744e1a390fde91e8b7a322801a77750032
+++ Attic/doc/log.txt c835983bdf8864f607bf4dd57a1b2d699a1158a2
@@ -1,4 +1,8 @@
+* 1.5.13, December 10, 2006
+ - Compilation fixes for the bzip2, zlib, and GNU MP modules
+ - Better support for Intel C++ and EKOpath C++ on x86-64
+
* 1.5.12, October 27, 2006
- Cleanups in the initialization routines
- Add some x86-64 assembly for multiply-add
============================================================
--- Attic/misc/config/arch/amd64 3bda1ee7f9267f5af7c95766e9eee95c7e5dbb5d
+++ Attic/misc/config/arch/amd64 e99af0aae34e6c83886d5386e79380471b977fe9
@@ -3,11 +3,18 @@ default_submodel amd64
default_submodel amd64
<aliases>
-k8
x86-64
x86_64 # for RPM
-athlon64
+</aliases>
+
+<submodels>
opteron
em64t
core2duo
+</submodels>
+
+<submodel_aliases>
+core -> core2duo
+athlon64 -> opteron
+k8 -> opteron
+</submodel_aliases>
-</aliases>
============================================================
--- Attic/misc/config/cc/ekopath fcbf959e44c10427ea1868d5193271c8a9916b07
+++ Attic/misc/config/cc/ekopath 54df4f6c355b56ff537db7e429024428da3a6300
@@ -13,6 +13,8 @@ warning_flags "-W -Wall"
lang_flags "-D_REENTRANT -ansi -Wno-long-long"
warning_flags "-W -Wall"
+ar_command "pathCC -ar -o"
+
so_obj_flags "-fPIC"
debug_flags "-g"
@@ -23,14 +25,14 @@ default -> "$(CXX) -shared -fPIC -Wl,-so
</so_link_flags>
<mach_opt>
-i386 -> "-mcpu=anyx86"
athlon -> "-mcpu=athlon"
+pentium4 -> "-mcpu=pentium4"
+
opteron -> "-mcpu=opteron"
em64t -> "-mcpu=em64t"
-athlon64 -> "-mcpu=athlon64"
-pentium4 -> "-mcpu=pentium4"
+core2duo -> "-mcpu=core"
-# Reasonable default
+ia32 -> "-mcpu=anyx86"
amd64 -> "-mcpu=athlon64"
</mach_opt>
============================================================
--- Attic/misc/config/cc/gcc b8325689146701fd42f035c20d39185cdc5772a6
+++ Attic/misc/config/cc/gcc 53a2886a580529bc110fa57601059c7e335807ea
@@ -42,6 +42,9 @@ sparc64-ultra3 -> "-mcpu=v9 -mtune=ultra
ppc601 -> "-mpowerpc -mcpu=601"
sparc64-ultra3 -> "-mcpu=v9 -mtune=ultrasparc3"
+core2duo -> "-march=nocona -momit-leaf-frame-pointer"
+em64t -> "-march=nocona -momit-leaf-frame-pointer"
+
# Default family options (SUBMODEL is substitued with the real submodel)
# Anything after the quotes is what should be *removed* from the submodel name
# before it's put into SUBMODEL.
============================================================
--- Attic/misc/gtk/GNUmakefile d52f8093982af036e6df3cee4635b90f7eac7a1b
+++ Attic/misc/gtk/Makefile 10999a0650770e6880072f29726dcb3c7e30f143
@@ -1,24 +1,18 @@
-CC = g++
-
LIBS=$(shell botan-config --libs) $(shell pkg-config --libs gtk+-2.0)
IFLAGS=$(shell botan-config --cflags) $(shell pkg-config --cflags gtk+-2.0)
-FLAGS=-Wall -W $(IFLAGS)
-SOURCE=$(wildcard *.cpp)
-HEADERS=$(wildcard *.h)
+CXX = g++
+CXXFLAGS=-Wall -W $(IFLAGS)
-OBJS=$(patsubst %.cpp,%.o,$(SOURCE))
+dsa: gtk_ui.o dsa.o
+ $(CXX) $^ $(LIBS) -o $@
-APP=dsa
+gtk_ui.o: gtk_ui.cpp gtk_ui.h
+ $(CXX) $(CXXFLAGS) -c $< -o $@
-all: $(APP)
+dsa.o: dsa.cpp gtk_ui.h
+ $(CXX) $(CXXFLAGS) -c $< -o $@
-$(APP): $(OBJS)
- $(CC) $(OBJS) $(LIBS) -o $(APP)
-
-%.o: %.cpp $(HEADERS)
- $(CC) $(FLAGS) -c $<
-
clean:
+ rm -f dsa *.o
- rm -f $(APP) $(OBJS)
============================================================
--- Attic/misc/python/src/pk.cpp 9c722a74d36029b3a202e0671d31c49ac9e62104
+++ Attic/misc/python/src/pk.cpp 2fe597d3617538be1f7c2b447be091db87c7b1ee
@@ -103,11 +103,13 @@ void export_pk()
.def("__init__",
python::make_constructor(get_pk_encryptor,
python::with_custodian_and_ward_postcall<0, 1>()))
- .def("max_input", &PK_Encryptor::maximum_input_size).
- def("encrypt", encrypt_string);
+ .def("max_input", &PK_Encryptor::maximum_input_size)
+ .def("encrypt", encrypt_string);
+ /*
python::class_<PK_Decryptor, boost::noncopyable>
("PK_Decryptor", python::no_init)
.def("__init__", python::make_constructor(get_pk_decryptor))
.def("decrypt", decrypt_string);
+ */
}
============================================================
--- Attic/modules/alg_amd64/modinfo.txt 83447af5a29d3658432b2743cac69524880f749e
+++ Attic/modules/alg_amd64/modinfo.txt d73e9033b08859e5e94970c0beafae394437ce0f
@@ -22,6 +22,7 @@
<cc>
gcc
+icc
</cc>
# ELF systems
============================================================
--- Attic/modules/alg_ia32/modinfo.txt b3acc5a44e02b99f69e4916e957a48dfa8b008d8
+++ Attic/modules/alg_ia32/modinfo.txt 95bbfd7319fdc36a8a2f5fe843001a53bbaf55af
@@ -28,6 +28,7 @@
<cc>
gcc
+icc
</cc>
# ELF systems
============================================================
--- Attic/modules/comp_bzip2/bzip2.cpp eeaa5981f9ccc3f6bb9c1a7f9c274da27b8fca6b
+++ Attic/modules/comp_bzip2/bzip2.cpp 9428fd47a6b3a8ef3e36048fc746becea6e0f50e
@@ -22,7 +22,7 @@ class Bzip_Alloc_Info
std::map<void*, u32bit> current_allocs;
Allocator* alloc;
- Bzip_Alloc_Info() { alloc = get_allocator(); }
+ Bzip_Alloc_Info() { alloc = Allocator::get(false); }
};
/*************************************************
============================================================
--- Attic/modules/comp_zlib/zlib.cpp d3fba64825d528376f05abfbed84d8b60c979b22
+++ Attic/modules/comp_zlib/zlib.cpp 6c9406aff51381ad31d0624b76e5be347207dfc4
@@ -21,7 +21,7 @@ class Zlib_Alloc_Info
std::map<void*, u32bit> current_allocs;
Allocator* alloc;
- Zlib_Alloc_Info() { alloc = get_allocator(); }
+ Zlib_Alloc_Info() { alloc = Allocator::get(false); }
};
/*************************************************
============================================================
--- Attic/modules/eng_gmp/gmp_mem.cpp b0395a39eb4fa971b420d41d189fe0fb1d6d3980
+++ Attic/modules/eng_gmp/gmp_mem.cpp c8f90c432a0cd8a842a2ddc38b8b1b3c9c944153
@@ -52,7 +52,7 @@ void GMP_Engine::set_memory_hooks()
{
if(gmp_alloc == 0)
{
- gmp_alloc = get_allocator();
+ gmp_alloc = Allocator::get(true);
mp_set_memory_functions(gmp_malloc, gmp_realloc, gmp_free);
}
}
============================================================
--- Attic/readme.txt 3aa822b0912a9b71bd4adc097f98443b96f717f5
+++ Attic/readme.txt 03d624dc2b7958f3d790715aedc0ea71385e1878
@@ -1,9 +1,10 @@
-Please note that this is an experimental / development version of Botan.
-Don't be surprised by bugs. No, the documentation hasn't been updated
-(yet). Feedback and critical analysis is highly appreciated. If this
-sounds scary, use the latest 1.4 release instead. You can file bugs at
-http://www.randombit.net/bugzilla
+This is the first release candidate for Botan 1.6.0. Please test with
+your applications and report problems. Note that some APIs have
+changed, in some cases dramatically. However most code that works
+against Botan 1.4.x should work with minimal or no modifications.
+You can file bugs at http://www.randombit.net/bugzilla
+
Jack
(lloyd@randombit.net)
============================================================
--- make_prm.cpp e9f4a2387ea8bd55d93d4c93ba73fc8ebf028212
+++ make_prm.cpp 133075e517d2f68f4b4370fdae3898422c33a5d6
@@ -111,7 +111,7 @@ BigInt random_prime(u32bit bits, const B
BigInt random_prime(u32bit bits, const BigInt& coprime,
u32bit equiv, u32bit modulo)
{
- if(bits <= 48)
+ if(bits < 48)
throw Invalid_Argument("random_prime: Can't make a prime of " +
to_string(bits) + " bits");