+++ /dev/null
-/*
- * ringBufferThreads.h - SecureTransport client and server thread
- * routines which use ringBufferIo for I/O (no sockets).
- */
-
-#include <Security/SecureTransport.h>
-#include <Security/SecureTransportPriv.h>
-#include <clAppUtils/ringBufferIo.h>
-#include <CoreFoundation/CoreFoundation.h>
-
-#ifndef _RING_BUFFER_THREADS_H_
-#define _RING_BUFFER_THREADS_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define SHARED_SECRET_SIZE 32
-
-/*
- * arguments to client thread and server pseudothread
- */
-typedef struct {
- unsigned xferSize; /* total bytes for client to write and server to
- * read */
- void *xferBuf; /* move to/from here */
- unsigned chunkSize; /* size of xferBuf; client writes this much at
- * a time */
- RingBuffer *ringWrite; /* I/O writes to this... */
- RingBuffer *ringRead; /* ...and reads from this */
-
- /* client's goFlag is &(server's iAmReady); vice versa */
- bool iAmReady; /* this thread is ready for handshake */
- bool *goFlag; /* when both threads see this, they start
- * their handshakes */
- bool *abortFlag; /* anyone sets this on error */
- /* everyone aborts when they see this true */
- bool pauseOnError; /* call testError() on error */
-
- char *hostName; /* optional for client */
-
- /* EAP-specific stuff */
- unsigned char sharedSecret[SHARED_SECRET_SIZE];
- unsigned char *sessionTicket; /* for client only */
- unsigned sessionTicketLen;
-
- /*
- * setMasterSecret indicates wheter we call SSLInternalSetMasterSecretFunction().
- * If false, the server better have a signing identity in idArray.
- */
- bool setMasterSecret;
- CFArrayRef idArray; /* optional, server only */
- CFArrayRef trustedRoots; /* generally from server's idArray */
-
- /* returned on success */
- SSLProtocol negotiatedProt;
- SSLCipherSuite negotiatedCipher;
- Boolean sessionWasResumed;
-
- CFAbsoluteTime startHandshake;
- CFAbsoluteTime startData;
- CFAbsoluteTime endData;
-} RingBufferArgs;
-
-/*
- * Client thread - handshake and write sslArgs->xferSize bytes of data.
- */
-void *rbClientThread(void *arg);
-
-/*
- * Server function - like clientThread except it runs from the main thread.
- * handshake and read sslArgs->xferSize bytes of data.
- */
-OSStatus rbServerThread(RingBufferArgs *sslArgs);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _RING_BUFFER_THREADS_H_*/