Actual source code: petscwebclient.h

      1: /*
      2:   This is the include file for source code that accesses HTTPS
      3: */
      4: #if !defined(PETSCWEBCLIENT_H)
      5: #define PETSCWEBCLIENT_H

      7: /*  complex number I conflicts with SSL include files */
      8: #define PETSC_SKIP_COMPLEX
      9: #include <petscsys.h>

     11: #include <errno.h>
     12: #include <sys/types.h>
     13: #include <sys/socket.h>
     14: #include <netinet/in.h>
     15: #include <netinet/tcp.h>
     16: #include <netdb.h>
     17: #include <fcntl.h>
     18: #include <signal.h>
     19: #include <unistd.h>
     20: #include <string.h>

     22: #include <openssl/ssl.h>
     23: #include <openssl/err.h>

     25: PETSC_EXTERN PetscErrorCode PetscSSLInitializeContext(SSL_CTX **);
     26: PETSC_EXTERN PetscErrorCode PetscSSLDestroyContext(SSL_CTX *);
     27: PETSC_EXTERN PetscErrorCode PetscHTTPSRequest(const char[],const char[],const char[],const char[],const char[],SSL*,char[],size_t);
     28: PETSC_EXTERN PetscErrorCode PetscHTTPSConnect(const char[],int,SSL_CTX *,int *,SSL **);

     30: PETSC_EXTERN PetscErrorCode PetscHTTPRequest(const char[],const char[],const char[],const char[],const char[],int,char[],size_t);
     31: #endif