summary refs log tree commit diff stats
path: root/lib/wrappers/openssl.nim
Commit message (Expand)AuthorAgeFilesLines
* introduce csize_t instead of fixing csize (#12497)Arne Döring2019-10-311-4/+4
* fix several typos in documentation and comments (#12553)Nindaleth2019-10-301-1/+1
* Revert "Fixes #12187 (#12321)" (#12447)Andreas Rumpf2019-10-181-2/+2
* Fixes #12187 (#12321)Clyybber2019-10-081-2/+2
* style improvements; fixes #11774Araq2019-07-191-1/+1
* [bugfix] openssl styleCheck fix: consistent var naming (#11750)Kaushal Modi2019-07-161-4/+4
* minor style changesAraq2019-07-111-70/+75
* [bugfix] Add `.47` as supported libssl versionSolitudeSF2019-06-141-2/+2
* Add force openSSL version with -d:sslVersion=1.0.0 (#11272)treeform2019-05-201-2/+25
* fix #10281 (#10282)Timothee Cour2019-01-121-1/+5
* Fix libssl order. Newest one is 1.1Andre von Houck2019-01-081-1/+1
* Better LibSSL search order. (#10230)treeform2019-01-081-1/+1
* removes deprecated T/P typesAraq2018-11-161-2/+0
* Add `.46` as supported libssl version (#9704)Solitude2018-11-151-1/+1
* Allocate OpenSSL memory outside of the thread heapLemonBoy2018-09-271-5/+5
* add SSL_set_SSL_CTX for SNI(Server Name Indication) (#8308)momf2018-07-131-0/+1
* Set Genode Openssl shared-object stringsEmery Hemingway2018-06-071-0/+4
* SSL implementation: added nimNoAllocForSSLAndreas Rumpf2018-05-271-2/+2
* link against libssl.so.45SolitudeSF2018-04-261-1/+1
* remove dead code elimination option (#7669)Jacek Sieka2018-04-231-1/+1
* libssl.so.44 fix (#7358)Solitude2018-03-201-1/+1
* OpenSSL: 32bit DLL names on Windows lack the -x32 suffixAraq2018-02-091-2/+2
* OpenSSL: use modern DLLs on Windows; export DLLSSLName and DLLUtilName for mo...Araq2018-02-091-8/+8
* Add note about OpenSSL 1.0.x support to openssl module.Dominik Picheta2018-01-201-1/+3
* Allow static linking with OpenSSL 1.0.xRuslan Mustakov2018-01-201-20/+26
* Add OpenSSL 1.1.0 support #5000Federico Ceratto2017-12-281-20/+75
* Added a couple of procs for RSA verification (#6942)Yuriy Glukhov2017-12-191-0/+8
* more replacements for the deprecated '<'Andreas Rumpf2017-10-291-1/+1
* make openssl.nim compile againAndreas Rumpf2017-10-101-9/+9
* avoid deprecated procsAndreas Rumpf2017-07-261-2/+2
* Fixes #4893.Dominik Picheta2017-05-171-1/+1
* Added BIO_new_mem_bufYuriy Glukhov2016-12-051-0/+2
* In case of synliboverride we support only openssl 1.0.*Yuriy Glukhov2016-11-301-51/+62
* More fixesYuriy Glukhov2016-11-301-40/+36
* Fixed dynlink with OpenSSL >1.1.0. Added loadLibPattern.Yuriy Glukhov2016-11-301-10/+58
* Fixed openssl for androidYuriy Glukhov2016-11-091-3/+6
* Support OpenSSL 1.0.2Federico Ceratto2016-10-171-1/+1
* Merge branch 'tls-psk' of https://github.com/zielmicha/nim into zielmicha-tls...Dominik Picheta2016-06-031-0/+24
|\
| * net.nim: support for TLS-PSK ciphersuitesMichał Zieliński2015-10-241-0/+20
| * net.nim: support storing arbitrary data inside SSLContextMichał Zieliński2015-10-241-0/+4
* | Fixed some warnings in httpclient, net, and openssl.Dominik Picheta2016-04-041-2/+2
* | Fix openssl md5 importcsdef2016-01-241-6/+5
* | Add serach for libssl.so without version suffix.Łukasz Dubiel2015-10-291-1/+1
|/
* fixes DLL hell on WindowsAraq2015-09-051-3/+9
* preparations for more Nimble packages; clear licensing; fixes #2949Araq2015-06-201-89/+59
* do not set mem functions on osxHarald Lapp2015-03-121-1/+1
* Refine the definition of the server name callbcak.Nathan Hoad2015-03-081-3/+2
* Some more documentation for the SNI related procs.Nathan Hoad2015-03-081-0/+12
* Don't support old versions of OpenSSL.Nathan Hoad2015-03-081-1/+1
* Add some documentation to the server-side callback functions.Nathan Hoad2015-03-071-0/+3
r the CI pipeline. (#15088)' href='/ahoang/Nim/commit/azure-pipelines.yml?h=devel&id=c292c57e48c719875a37fa50d2ca6a3d3639ae2e'>c292c57e4 ^
d5f011d9e ^

d5f011d9e ^

97825805e ^

e70294dff ^

d5f011d9e ^
ddc5f8fbc ^
d5f011d9e ^
e70294dff ^
d5f011d9e ^





ddc5f8fbc ^
d5f011d9e ^





ddc5f8fbc ^

d5f011d9e ^

dbb053492 ^
d5f011d9e ^


dbb053492 ^
d5f011d9e ^

ddc5f8fbc ^







d5f011d9e ^

dbb053492 ^
d5f011d9e ^

dbb053492 ^
d5f011d9e ^


ddc5f8fbc ^








dbb053492 ^
d5f011d9e ^

c292c57e4 ^
dbb053492 ^
c292c57e4 ^





dbb053492 ^
c292c57e4 ^

d5f011d9e ^
ddc5f8fbc ^

d5f011d9e ^
c292c57e4 ^
d5f011d9e ^








c292c57e4 ^
d5f011d9e ^



c292c57e4 ^
ddc5f8fbc ^
c292c57e4 ^
ddc5f8fbc ^
c292c57e4 ^

ddc5f8fbc ^
dbb053492 ^
c292c57e4 ^
d5f011d9e ^

dbb053492 ^
d5f011d9e ^


c292c57e4 ^
dbb053492 ^
d5f011d9e ^


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215








            



               









                                                                                                             




                                                                                                        
                
                              

                    
                              

                                
                             

                               









                                       









                                                                          
                                                                          

                    


                                          




                                                            
                                             
 
                                                                                
                                          
                                                                   


                      

                                         
                                                                   

             


                                         
                                          
                                                                      

                                                                                       
                                                                                                                                      

             


                                                  
                         
                                                                               
 
                                                               
                           

                                              

           

                                                                          

                                                                              
                                          
                                                                                         
                                                                                
                                                                                   





                                    
 





                                    

                                  

                                                      
                                                                                                                                     


                                               
                                                                                                        

             







                                                                                                 

                                                   
                                                                                                            

                                                                               
                                                                   


                                               








                                                 
                                                                   

                                       
                                                                                                       
                                                                   





                                                                      
                                                                   

                                           
             

                    
             
            








                                    
                  



                                                 
                                              
                                                               
            
                                                                       

          
                                            
                                                                   
                                                         

                      
                                                                   


                                                                        
                                                                     
                                                                   


                                                 
trigger:
  branches:
    include:
    - '*'
pr:
  branches:
    include:
    - '*'

variables:
- name: skipci
  value: false 

jobs:
- job: packages

  timeoutInMinutes: 90 # default `60` led to lots of cancelled jobs; use 0 for unlimited (may be undesirable)

  strategy:
    matrix:
      Linux_amd64:
        vmImage: 'ubuntu-16.04'
        CPU: amd64
      Linux_i386:
        # bug #17325: fails on 'ubuntu-16.04' because it now errors with:
        # g++-multilib : Depends: gcc-multilib (>= 4:5.3.1-1ubuntu1) but it is not going to be installed
        vmImage: 'ubuntu-18.04'
        CPU: i386
      OSX_amd64:
        vmImage: 'macOS-10.15'
        CPU: amd64
      OSX_amd64_cpp:
        vmImage: 'macOS-10.15'
        CPU: amd64
        NIM_COMPILE_TO_CPP: true
      Windows_amd64_batch0_3:
        vmImage: 'windows-2019'
        CPU: amd64
        # see also: `NIM_TEST_PACKAGES`
        NIM_TESTAMENT_BATCH: "0_3"
      Windows_amd64_batch1_3:
        vmImage: 'windows-2019'
        CPU: amd64
        NIM_TESTAMENT_BATCH: "1_3"
      Windows_amd64_batch2_3:
        vmImage: 'windows-2019'
        CPU: amd64
        NIM_TESTAMENT_BATCH: "2_3"

  pool:
    vmImage: $(vmImage)

  workspace:
    clean: all

  steps:
    - bash: git config --global core.autocrlf false
      displayName: 'Disable auto conversion to CRLF by git (Windows-only)'
      condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))

    - checkout: self
      fetchDepth: 2 # see D20210329T004830

    - bash: |
        set -e
        . ci/funs.sh
        if nimIsCiSkip; then
          echo '##vso[task.setvariable variable=skipci]true'
        fi
      displayName: 'Check whether to skip CI'

    - bash: git clone --depth 1 https://github.com/nim-lang/csources_v1 csources
      displayName: 'Checkout Nim csources'
      condition: and(succeeded(), eq(variables['skipci'], 'false'))

    - task: NodeTool@0
      inputs:
        versionSpec: '12.x'
      displayName: 'Install node.js 12.x'
      condition: and(succeeded(), eq(variables['skipci'], 'false'))

    - bash: |
        set -e
        . ci/funs.sh
        echo_run sudo apt-fast update -qq
        DEBIAN_FRONTEND='noninteractive' \
          echo_run sudo apt-fast install --no-install-recommends -yq \
            libcurl4-openssl-dev libgc-dev libsdl1.2-dev libsfml-dev valgrind libc6-dbg
      displayName: 'Install dependencies (amd64 Linux)'
      condition: and(succeeded(), eq(variables['skipci'], 'false'), eq(variables['Agent.OS'], 'Linux'), eq(variables['CPU'], 'amd64'))

    - bash: |
        set -e
        . ci/funs.sh
        echo_run sudo dpkg --add-architecture i386
        # Downgrade llvm:
        # - llvm has to be downgraded to have 32bit version installed for sfml.

        cat << EOF | sudo tee /etc/apt/preferences.d/pin-to-rel
        Package: libllvm6.0
        Pin: origin "azure.archive.ubuntu.com"
        Pin-Priority: 1001
        EOF

        # echo_run sudo apt-fast update -qq
        echo_run sudo apt-fast update -qq || echo "failed, see bug #17343"
        # `:i386` (e.g. in `libffi-dev:i386`) is needed otherwise you may get:
        # `could not load: libffi.so` during dynamic loading.
        DEBIAN_FRONTEND='noninteractive' \
          echo_run sudo apt-fast install --no-install-recommends --allow-downgrades -yq \
            g++-multilib gcc-multilib libcurl4-openssl-dev:i386 libgc-dev:i386 \
            libsdl1.2-dev:i386 libsfml-dev:i386 libglib2.0-dev:i386 libffi-dev:i386

        cat << EOF > bin/gcc
        #!/bin/bash

        exec $(which gcc) -m32 "\$@"
        EOF

        cat << EOF > bin/g++
        #!/bin/bash

        exec $(which g++) -m32 "\$@"
        EOF

        echo_run chmod 755 bin/gcc
        echo_run chmod 755 bin/g++

      displayName: 'Install dependencies (i386 Linux)'
      condition: and(succeeded(), eq(variables['skipci'], 'false'), eq(variables['Agent.OS'], 'Linux'), eq(variables['CPU'], 'i386'))

    - bash: brew install boehmgc make sfml
      displayName: 'Install dependencies (OSX)'
      condition: and(succeeded(), eq(variables['skipci'], 'false'), eq(variables['Agent.OS'], 'Darwin'))

    - bash: |
        set -e
        . ci/funs.sh
        echo_run mkdir dist
        echo_run curl -L https://nim-lang.org/download/mingw64.7z -o dist/mingw64.7z
        echo_run curl -L https://nim-lang.org/download/dlls.zip -o dist/dlls.zip
        echo_run 7z x dist/mingw64.7z -odist
        echo_run 7z x dist/dlls.zip -obin
        echo_run echo '##vso[task.prependpath]$(System.DefaultWorkingDirectory)/dist/mingw64/bin'

      displayName: 'Install dependencies (Windows)'
      condition: and(succeeded(), eq(variables['skipci'], 'false'), eq(variables['Agent.OS'], 'Windows_NT'))

    - bash: echo '##vso[task.prependpath]$(System.DefaultWorkingDirectory)/bin'
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'Add build binaries to PATH'

    - bash: |
        set -e
        . ci/funs.sh
        echo_run echo 'PATH:' "$PATH"
        echo_run echo '##[section]gcc version'
        echo_run gcc -v
        echo_run echo '##[section]nodejs version'
        echo_run node -v
        echo_run echo '##[section]make version'
        echo_run make -v
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'System information'

    - bash: echo '##vso[task.setvariable variable=csources_version]'"$(git -C csources rev-parse HEAD)"
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'Get csources version'

    - task: Cache@2
      inputs:
        key: 'csources | "$(Agent.OS)" | $(CPU) | $(csources_version)'
        path: csources/bin
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'Restore built csources'

    - bash: |
        set -e
        . ci/funs.sh
        ncpu=
        ext=
        case '$(Agent.OS)' in
        'Linux')
          ncpu=$(nproc)
          ;;
        'Darwin')
          ncpu=$(sysctl -n hw.ncpu)
          ;;
        'Windows_NT')
          ncpu=$NUMBER_OF_PROCESSORS
          ext=.exe
          ;;
        esac
        [[ -z "$ncpu" || $ncpu -le 0 ]] && ncpu=1

        if [[ -x csources/bin/nim$ext ]]; then
          echo_run echo "Found cached compiler, skipping build"
        else
          echo_run make -C csources -j $ncpu CC=gcc ucpu=$(CPU) koch=no
        fi

        echo_run cp csources/bin/nim$ext bin
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'Build 1-stage compiler from csources'

    - bash: nim c koch
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'Build koch'

      # set result to omit the "bash exited with error code '1'" message
    - bash: ./koch runCI || echo '##vso[task.complete result=Failed]'
      condition: and(succeeded(), eq(variables['skipci'], 'false'))
      displayName: 'Run CI'
      env:
        SYSTEM_ACCESSTOKEN: $(System.AccessToken)