@@ -195,22 +195,38 @@ pub unsafe fn set_verify_owner_validation(enabled: bool) -> Result<(), Error> {
195
195
Ok ( ( ) )
196
196
}
197
197
198
- /// Set the SSL certificate-authority locations. `file` is the location of a file containing
199
- /// several certificates concatenated together. `path` is the location of a directory holding
200
- /// several certificates, one per file. Either parameter may be `None`, but not both.
201
- pub unsafe fn set_ssl_cert_locations < P > ( file : Option < P > , path : Option < P > ) -> Result < ( ) , Error >
198
+ /// Set the SSL certificate-authority location to `file`. `file` is the location
199
+ /// of a file containing several certificates concatenated together.
200
+ pub unsafe fn set_ssl_cert_file < P > ( file : P ) -> Result < ( ) , Error >
202
201
where
203
202
P : IntoCString ,
204
203
{
205
204
crate :: init ( ) ;
206
- let file = crate :: opt_cstr ( file) ?;
207
- let path = crate :: opt_cstr ( path) ?;
208
205
209
206
unsafe {
210
207
try_call ! ( raw:: git_libgit2_opts(
211
208
raw:: GIT_OPT_SET_SSL_CERT_LOCATIONS as libc:: c_int,
212
- file,
213
- path
209
+ file. into_c_string( ) ?. as_ptr( ) ,
210
+ core:: ptr:: null:: <libc:: c_char>( )
211
+ ) ) ;
212
+ }
213
+
214
+ Ok ( ( ) )
215
+ }
216
+
217
+ /// Set the SSL certificate-authority location to `path`. `path` is the location
218
+ /// of a directory holding several certificates, one per file.
219
+ pub unsafe fn set_ssl_cert_dir < P > ( path : P ) -> Result < ( ) , Error >
220
+ where
221
+ P : IntoCString ,
222
+ {
223
+ crate :: init ( ) ;
224
+
225
+ unsafe {
226
+ try_call ! ( raw:: git_libgit2_opts(
227
+ raw:: GIT_OPT_SET_SSL_CERT_LOCATIONS as libc:: c_int,
228
+ core:: ptr:: null:: <libc:: c_char>( ) ,
229
+ path. into_c_string( ) ?. as_ptr( )
214
230
) ) ;
215
231
}
216
232
0 commit comments