Removed nobtain function for pratical use

multi_plaform
ambigipathyv ago%!(EXTRA string=1 year)
parent 3b453c3b73
commit fbf15c619f
  1. 2
      bakanet/src/bakanet/sock_layer/socket.h
  2. 25
      bakanet/src/platform/linux/linux_socket.cpp
  3. 2
      bakanet/src/platform/linux/linux_socket.h

@ -24,8 +24,6 @@ namespace Bk::Net {
virtual void emit(Connection socket, std::vector<char> packet) = 0;
virtual std::vector<char> obtain(int size) = 0;
virtual std::vector<char> obtain(Connection conn, int size) = 0;
virtual std::vector<char> nobtain() = 0;
virtual std::vector<char> nobtain(Connection conn) = 0;
template<typename T>
static bool set_option(Socket& socket, int level, int option_name, const T* option_value)

@ -1,5 +1,4 @@
#include "linux_socket.h"
#include <iostream>
namespace Bk::Net {
LinuxSocket::LinuxSocket(IpAddress ip, int port, IpProtocol proto)
@ -86,30 +85,6 @@ namespace Bk::Net {
buffer.resize(read_size);
return buffer;
}
std::vector<char> LinuxSocket::nobtain()
{
std::vector<char> buffer(0);
int len = 0;
ioctl(socket_id, FIONREAD, &len);
if (len > 0) {
buffer.resize(len);
len = read(socket_id, buffer.data(), buffer.size() - 1);
}
return buffer;
}
std::vector<char> LinuxSocket::nobtain(Connection conn)
{
std::vector<char> buffer(0);
int len = 0;
ioctl(socket_id, FIONREAD, &len);
if (len > 0) {
buffer.resize(len);
len = read(conn, buffer.data(), buffer.size() - 1);
}
return buffer;
}
std::unique_ptr<Socket> Socket::create(IpAddress ip, int port, IpProtocol proto)
{

@ -20,8 +20,6 @@ namespace Bk::Net {
void emit(Connection socket, std::vector<char> packet) override;
std::vector<char> obtain(int size) override;
std::vector<char> obtain(Connection conn, int size) override;
std::vector<char> nobtain() override;
std::vector<char> nobtain(Connection conn) override;
private:
Connection socket_id;

Loading…
Cancel
Save