diff options
| author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2012-06-26 15:43:45 -0500 |
|---|---|---|
| committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2012-06-26 15:43:45 -0500 |
| commit | 249a46324f4f46a6c8afd11f74c8c73ede152184 (patch) | |
| tree | 65ef4e06e7db679f96d29039066ee1ed712fb837 /lib/libtdekrb/src/tdekrbclientsocket.cpp | |
| parent | fbfb9b1a49003013f646f81b344d5d3a44255c44 (diff) | |
| download | ulab-249a46324f4f46a6c8afd11f74c8c73ede152184.tar.gz ulab-249a46324f4f46a6c8afd11f74c8c73ede152184.zip | |
Add skeleton for missing functions in tde kerberos library
Diffstat (limited to 'lib/libtdekrb/src/tdekrbclientsocket.cpp')
| -rw-r--r-- | lib/libtdekrb/src/tdekrbclientsocket.cpp | 66 |
1 files changed, 62 insertions, 4 deletions
diff --git a/lib/libtdekrb/src/tdekrbclientsocket.cpp b/lib/libtdekrb/src/tdekrbclientsocket.cpp index ad7f0bd..a567a09 100644 --- a/lib/libtdekrb/src/tdekrbclientsocket.cpp +++ b/lib/libtdekrb/src/tdekrbclientsocket.cpp @@ -22,6 +22,7 @@ #include <unistd.h> #include <tqapplication.h> +#include <tqbuffer.h> #include <sasl.h> #include <saslplug.h> @@ -78,12 +79,16 @@ static int logSASLMessages(void *context __attribute__((unused)), int priority, return SASL_OK; } -TDEKerberosClientSocket::TDEKerberosClientSocket(TQObject *parent, const char *name) : TQSocket(parent, name), m_kerberosRequested(false), m_negotiatedMaxBufferSize(NET_SEC_BUF_SIZE), m_criticalSection(0) { +TDEKerberosClientSocket::TDEKerberosClientSocket(TQObject *parent, const char *name) : TQSocket(parent, name), m_kerberosRequested(false), m_criticalSection(0), m_negotiatedMaxBufferSize(NET_SEC_BUF_SIZE) { saslData = new SASLDataPrivate; saslData->m_krbConnection = NULL; + m_buffer = new TQBuffer(); + m_buffer->open(IO_ReadWrite); } TDEKerberosClientSocket::~TDEKerberosClientSocket() { + m_buffer->close(); + delete m_buffer; delete saslData; } @@ -102,6 +107,58 @@ void TDEKerberosClientSocket::close() { } } +void TDEKerberosClientSocket::flush() { + if (m_kerberosRequested) { + // RAJA FIXME + } + else { + TQSocket::flush(); + } +} + +TQIODevice::Offset TDEKerberosClientSocket::size() const { + TQIODevice::Offset ret; + + if (m_kerberosRequested) { + // RAJA FIXME + } + else { + ret = TQSocket::size(); + } + + return ret; +} + +TQIODevice::Offset TDEKerberosClientSocket::at() const { + return TQSocket::at(); +} + +bool TDEKerberosClientSocket::at(TQIODevice::Offset off) { + bool ret; + + if (m_kerberosRequested) { + // RAJA FIXME + } + else { + ret = TQSocket::at(off); + } + + return ret; +} + +bool TDEKerberosClientSocket::atEnd() const { + bool ret; + + if (m_kerberosRequested) { + // RAJA FIXME + } + else { + ret = TQSocket::atEnd(); + } + + return ret; +} + int TDEKerberosClientSocket::setUsingKerberos(bool krbactive) { int ret = 0; @@ -227,7 +284,9 @@ void TDEKerberosClientSocket::sendSASLDataToNetwork(const char *buffer, unsigned len = strlen(buf); buf[len] = '\n'; buf[len+1] = 0; - write(netfd, buf, len+1); + if (write(netfd, buf, len+1) < 0) { + // ERROR + } free(buf); } @@ -297,7 +356,7 @@ int TDEKerberosClientSocket::transmitEncryptedData(int fd, const char* readbuf, return 0; } -int TDEKerberosClientSocket::receiveEncryptedData(char *buf, int trunclen) { +int TDEKerberosClientSocket::receiveEncryptedData(char *buf, unsigned int trunclen) { unsigned int recv_len; const char *recv_data; int result; @@ -340,7 +399,6 @@ int TDEKerberosClientSocket::initializeKerberosInterface() { unsigned int len; int slen; const char *data; - char user_authorized = 0; sasl_ssf_t *ssf; char *iplocal = NULL; char *ipremote = NULL; |
