xref: /petsc/include/petscwebclient.h (revision 6524c165f7ddaf30fd7457737f668f984c8ababf)
10efc6a03SBarry Smith /*
20efc6a03SBarry Smith   This is the include file for source code that accesses HTTPS
30efc6a03SBarry Smith */
4*6524c165SJacob Faibussowitsch #ifndef PETSCWEBCLIENT_H
526bd1501SBarry Smith #define PETSCWEBCLIENT_H
60efc6a03SBarry Smith 
7d4161b4aSBarry Smith /*  complex number I conflicts with SSL include files */
8d4161b4aSBarry Smith #define PETSC_SKIP_COMPLEX
90efc6a03SBarry Smith #include <petscsys.h>
100efc6a03SBarry Smith 
110efc6a03SBarry Smith #include <errno.h>
120efc6a03SBarry Smith #include <sys/types.h>
130efc6a03SBarry Smith #include <sys/socket.h>
140efc6a03SBarry Smith #include <netinet/in.h>
150efc6a03SBarry Smith #include <netinet/tcp.h>
160efc6a03SBarry Smith #include <netdb.h>
170efc6a03SBarry Smith #include <fcntl.h>
180efc6a03SBarry Smith #include <signal.h>
190efc6a03SBarry Smith #include <unistd.h>
200efc6a03SBarry Smith #include <string.h>
210efc6a03SBarry Smith 
220efc6a03SBarry Smith #include <openssl/ssl.h>
230efc6a03SBarry Smith #include <openssl/err.h>
240efc6a03SBarry Smith 
250efc6a03SBarry Smith PETSC_EXTERN PetscErrorCode PetscSSLInitializeContext(SSL_CTX **);
260efc6a03SBarry Smith PETSC_EXTERN PetscErrorCode PetscSSLDestroyContext(SSL_CTX *);
270efc6a03SBarry Smith PETSC_EXTERN PetscErrorCode PetscHTTPSRequest(const char[], const char[], const char[], const char[], const char[], SSL *, char[], size_t);
280efc6a03SBarry Smith PETSC_EXTERN PetscErrorCode PetscHTTPSConnect(const char[], int, SSL_CTX *, int *, SSL **);
290efc6a03SBarry Smith 
3004102261SBarry Smith PETSC_EXTERN PetscErrorCode PetscHTTPRequest(const char[], const char[], const char[], const char[], const char[], int, char[], size_t);
310efc6a03SBarry Smith #endif
32