aboutsummaryrefslogtreecommitdiff
path: root/openssl-sys/build/cfgs.rs
diff options
context:
space:
mode:
authorSteven Fackler <[email protected]>2018-05-19 19:43:02 -0700
committerSteven Fackler <[email protected]>2018-05-19 19:57:12 -0700
commitd991566f2b1b6803ad214fe6bf531d5870ab43fd (patch)
treed1d6e42fef37739dde443d8e5a66851a59af1c74 /openssl-sys/build/cfgs.rs
parentMerge pull request #921 from eonil/master (diff)
downloadrust-openssl-d991566f2b1b6803ad214fe6bf531d5870ab43fd.tar.xz
rust-openssl-d991566f2b1b6803ad214fe6bf531d5870ab43fd.zip
Support min/max version in LibreSSL
Their implementations of the accessors don't behave expected with no bounds, so we ignore those bits of the tests.
Diffstat (limited to 'openssl-sys/build/cfgs.rs')
-rw-r--r--openssl-sys/build/cfgs.rs45
1 files changed, 45 insertions, 0 deletions
diff --git a/openssl-sys/build/cfgs.rs b/openssl-sys/build/cfgs.rs
new file mode 100644
index 00000000..3e063aa3
--- /dev/null
+++ b/openssl-sys/build/cfgs.rs
@@ -0,0 +1,45 @@
+pub fn get(openssl_version: Option<u64>, libressl_version: Option<u64>) -> Vec<&'static str> {
+ let mut cfgs = vec![];
+
+ if let Some(libressl_version) = libressl_version {
+ cfgs.push("libressl");
+
+ if libressl_version >= 0x2_05_01_00_0 {
+ cfgs.push("libressl251");
+ }
+
+ if libressl_version >= 0x2_06_01_00_0 {
+ cfgs.push("libressl261");
+ }
+
+ if libressl_version >= 0x2_07_00_00_0 {
+ cfgs.push("libressl270");
+ }
+ } else {
+ let openssl_version = openssl_version.unwrap();
+
+ if openssl_version >= 0x1_00_02_08_0 {
+ cfgs.push("ossl102h");
+ }
+
+ if openssl_version >= 0x1_01_00_07_0 {
+ cfgs.push("ossl110g");
+ }
+
+ if openssl_version >= 0x1_01_01_00_0 {
+ cfgs.push("ossl111");
+ cfgs.push("ossl110");
+ } else if openssl_version >= 0x1_01_00_06_0 {
+ cfgs.push("ossl110");
+ cfgs.push("ossl110f");
+ } else if openssl_version >= 0x1_01_00_00_0 {
+ cfgs.push("ossl110");
+ } else if openssl_version >= 0x1_00_02_00_0 {
+ cfgs.push("ossl102");
+ } else if openssl_version >= 0x1_00_01_00_0 {
+ cfgs.push("ossl101");
+ }
+ }
+
+ cfgs
+}