Actual source code: petscwebclient.h
1: /*
2: This is the include file for source code that accesses HTTPS
3: */
4: #pragma once
6: /* MANSEC = Sys */
8: /* complex number I conflicts with SSL include files */
9: #include <petscmacros.h>
10: #if !PetscDefined(SKIP_COMPLEX)
11: #define PETSC_SKIP_COMPLEX
12: #endif
13: #include <petscsys.h>
15: #include <errno.h>
16: #include <sys/types.h>
17: #include <sys/socket.h>
18: #include <netinet/in.h>
19: #include <netinet/tcp.h>
20: #include <netdb.h>
21: #include <fcntl.h>
22: #include <signal.h>
23: #include <unistd.h>
24: #include <string.h>
26: #include <openssl/ssl.h>
27: #include <openssl/err.h>
29: PETSC_EXTERN PetscErrorCode PetscSSLInitializeContext(SSL_CTX **);
30: PETSC_EXTERN PetscErrorCode PetscSSLDestroyContext(SSL_CTX *);
31: PETSC_EXTERN PetscErrorCode PetscHTTPSRequest(const char[], const char[], const char[], const char[], const char[], SSL *, char[], size_t);
32: PETSC_EXTERN PetscErrorCode PetscHTTPSConnect(const char[], int, SSL_CTX *, int *, SSL **);
34: PETSC_EXTERN PetscErrorCode PetscHTTPRequest(const char[], const char[], const char[], const char[], const char[], int, char[], size_t);