Commit 5dfaaeb4 authored by jan.koester's avatar jan.koester
Browse files

test

parent e1d7c0e0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ netplus::condata<char>::condata(const condata<char> &src) : vector(src) {

netplus::condata<char>::condata(const std::vector<char> &src){
  pos=0;
  std::copy(src.begin(),src.end(),std::inserter<std::vector<char,condataAlloc<char>>>(*this,std::vector<char,condataAlloc<char>>::end()));
  std::copy(src.begin(),src.end(),std::back_inserter<std::vector<char,condataAlloc<char>>>(*this));
}

netplus::condata<char>::iterator netplus::condata<char>::begin(){
+3 −0
Original line number Diff line number Diff line
@@ -169,6 +169,9 @@ namespace netplus {

            /*states*/
            size_t SendOff = 0;
            std::atomic_bool WritePending{ false };

            int DebugId=0;

            std::mutex event_mutex;
        protected:
+300 −253

File changed.

Preview size limit exceeded, changes collapsed.

+17 −14
Original line number Diff line number Diff line
@@ -50,7 +50,7 @@ typedef unsigned long ULONG_PTR;
namespace netplus {
	enum sockettype { TCP = 0, UDP = 1, SSL = 2 };
#ifdef Windows
	enum IO_OPERATION { OP_READ = 0, OP_WRITE = 1 };
	enum IO_OPERATION { OP_READ = 0, OP_WRITE = 1 , OP_ACCEPT = 2};

	struct AcceptContext {
		WSAOVERLAPPED ov{};
@@ -101,6 +101,7 @@ namespace netplus {
		WSAOVERLAPPED overlapped;
		WSABUF        data;
		IO_OPERATION  operation;
		void* owner = nullptr;

		buffer(const buffer&) = delete;
		buffer& operator=(const buffer&) = delete;
@@ -151,10 +152,11 @@ namespace netplus {

		virtual void             accept(std::unique_ptr<socket>& csock) = 0;
#ifdef Windows 
		virtual void             accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock) = 0;
		virtual size_t           sendDataWSA(buffer& data, int flags) = 0;
		virtual size_t           recvDataWSA(buffer& data, int flags) = 0;
		virtual void             accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data) = 0;
		virtual void			 sendDataWSA(buffer& data, int flags) = 0;
		virtual void			 recvDataWSA(buffer& data, int flags) = 0;
		virtual void             prime_read(buffer& data) = 0;
		virtual void			 onWriteComplete(size_t bytes) {};
#endif
		virtual void             bind() = 0;
		virtual void             listen() = 0;
@@ -205,9 +207,9 @@ namespace netplus {
		tcp(const std::string& addr, int port, int maxconnections, int sockopts);
		~tcp();
#ifdef Windows
		void          accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock);
		size_t        sendDataWSA(buffer& data, int flags);
		size_t        recvDataWSA(buffer& data, int flags);
		void          accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data);
		void          sendDataWSA(buffer& data, int flags);
		void          recvDataWSA(buffer& data, int flags);
		void          prime_read(buffer& data);
#endif
		void          accept(std::unique_ptr <socket>& csock);
@@ -242,9 +244,9 @@ namespace netplus {

		void          accept(std::unique_ptr<socket>& csock);
#ifdef Windows
		void          accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock);
		size_t        sendDataWSA(buffer& data, int flags);
		size_t        recvDataWSA(buffer& data, int flags);
		void          accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data);
		void          sendDataWSA(buffer& data, int flags);
		void          recvDataWSA(buffer& data, int flags);
		void          prime_read(buffer& data);
#endif
		void          bind();
@@ -285,11 +287,12 @@ namespace netplus {
		size_t recvData(buffer& data, int flags = 0) override;

#ifdef Windows
		void accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock) override;
		size_t sendDataWSA(buffer& data, int flags);
		size_t recvDataWSA(buffer& data, int flags);
		void accept(LPFN_ACCEPTEX lpfnAcceptEx, std::unique_ptr<socket>& csock, buffer& data) override;
		void sendDataWSA(buffer& data, int flags);
		void recvDataWSA(buffer& data, int flags);
		void prime_read(buffer& data);
		bool handshakeStepIOCP();
		void onWriteComplete(size_t bytes) override;
#endif
		bool loadServerPrivateKeyDer(const std::string& keyDerPath);

+125 −93

File changed.

Preview size limit exceeded, changes collapsed.

Loading