install gdb in the alpine dockerfile
This commit is contained in:
		| @@ -1,103 +0,0 @@ | ||||
| /* | ||||
|  *  IXSocketSChannel.cpp | ||||
|  *  Author: Benjamin Sergeant | ||||
|  *  Copyright (c) 2018 Machine Zone, Inc. All rights reserved. | ||||
|  * | ||||
|  *  See https://docs.microsoft.com/en-us/windows/desktop/WinSock/using-secure-socket-extensions | ||||
|  * | ||||
|  *  https://github.com/pauldotknopf/WindowsSDK7-Samples/blob/master/netds/winsock/securesocket/stcpclient/tcpclient.c | ||||
|  * | ||||
|  *  This is the right example to look at: | ||||
|  *  https://www.codeproject.com/Articles/1000189/A-Working-TCP-Client-and-Server-With-SSL | ||||
|  * | ||||
|  *  Similar code is available from this git repo | ||||
|  *  https://github.com/david-maw/StreamSSL | ||||
|  */ | ||||
| #include "IXSocketSChannel.h" | ||||
|  | ||||
| #ifdef _WIN32 | ||||
| #include <WS2tcpip.h> | ||||
| #include <WinSock2.h> | ||||
| #include <basetsd.h> | ||||
| #include <io.h> | ||||
| #include <schannel.h> | ||||
| #include <ws2def.h> | ||||
|  | ||||
| #define WIN32_LEAN_AND_MEAN | ||||
|  | ||||
| #ifndef UNICODE | ||||
| #define UNICODE | ||||
| #endif | ||||
|  | ||||
| #include <mstcpip.h> | ||||
| #include <ntdsapi.h> | ||||
| #include <rpc.h> | ||||
| #include <stdio.h> | ||||
| #include <tchar.h> | ||||
| #include <winsock2.h> | ||||
| #include <ws2tcpip.h> | ||||
|  | ||||
| #include <windows.h> | ||||
|  | ||||
| #define RECV_DATA_BUF_SIZE 256 | ||||
|  | ||||
| // Link with ws2_32.lib | ||||
| #pragma comment(lib, "Ws2_32.lib") | ||||
|  | ||||
| // link with fwpuclnt.lib for Winsock secure socket extensions | ||||
| #pragma comment(lib, "fwpuclnt.lib") | ||||
|  | ||||
| // link with ntdsapi.lib for DsMakeSpn function | ||||
| #pragma comment(lib, "ntdsapi.lib") | ||||
|  | ||||
| // The following function assumes that Winsock | ||||
| // has already been initialized | ||||
|  | ||||
|  | ||||
| #else | ||||
| #error("This file should only be built on Windows") | ||||
| #endif | ||||
|  | ||||
| namespace ix | ||||
| { | ||||
|     SocketSChannel::SocketSChannel() | ||||
|     { | ||||
|         ; | ||||
|     } | ||||
|  | ||||
|     SocketSChannel::~SocketSChannel() | ||||
|     { | ||||
|     } | ||||
|  | ||||
|     bool SocketSChannel::connect(const std::string& host, int port, std::string& errMsg) | ||||
|     { | ||||
|         return Socket::connect(host, port, errMsg, nullptr); | ||||
|     } | ||||
|  | ||||
|  | ||||
|     void SocketSChannel::secureSocket() | ||||
|     { | ||||
|         // there will be a lot to do here ... | ||||
|     } | ||||
|  | ||||
|     void SocketSChannel::close() | ||||
|     { | ||||
|         Socket::close(); | ||||
|     } | ||||
|  | ||||
|     ssize_t SocketSChannel::send(char* buf, size_t nbyte) | ||||
|     { | ||||
|         return Socket::send(buf, nbyte); | ||||
|     } | ||||
|  | ||||
|     ssize_t SocketSChannel::send(const std::string& buffer) | ||||
|     { | ||||
|         return Socket::send(buffer); | ||||
|     } | ||||
|  | ||||
|     ssize_t SocketSChannel::recv(void* buf, size_t nbyte) | ||||
|     { | ||||
|         return Socket::recv(buf, nbyte); | ||||
|     } | ||||
|  | ||||
| } // namespace ix | ||||
| @@ -1,32 +0,0 @@ | ||||
| /* | ||||
|  *  IXSocketSChannel.h | ||||
|  *  Author: Benjamin Sergeant | ||||
|  *  Copyright (c) 2017-2018 Machine Zone, Inc. All rights reserved. | ||||
|  */ | ||||
|  | ||||
| #pragma once | ||||
|  | ||||
| #include "IXSocket.h" | ||||
|  | ||||
| namespace ix | ||||
| { | ||||
|     class SocketSChannel final : public Socket | ||||
|     { | ||||
|     public: | ||||
|         SocketSChannel(); | ||||
|         ~SocketSChannel(); | ||||
|  | ||||
|         virtual bool connect(const std::string& host, int port, std::string& errMsg) final; | ||||
|         virtual void close() final; | ||||
|  | ||||
|         // The important override | ||||
|         virtual void secureSocket() final; | ||||
|  | ||||
|         virtual ssize_t send(char* buffer, size_t length) final; | ||||
|         virtual ssize_t send(const std::string& buffer) final; | ||||
|         virtual ssize_t recv(void* buffer, size_t length) final; | ||||
|  | ||||
|     private: | ||||
|     }; | ||||
|  | ||||
| } // namespace ix | ||||
		Reference in New Issue
	
	Block a user