Go to the documentation of this file.
32 #include <sys/socket.h>
33 #include <sys/types.h>
92 virtual void output(std::ostream &
os)
const = 0;
105 inline static std::ostream &
129 operator bool()
const {
return (
bool)
builder; }
146 virtual bool listen(
int port);
153 void output(std::ostream &
os)
const override;
186 const std::string &_fname);
190 void output(std::ostream &
os)
const override;
194 std::string dir, std::string fname);
205 const std::string &
_name,
const std::string &_path);
207 void output(std::ostream &
os)
const override;
214 #endif //__SOCKET_HH__
static bool parseIni(const std::string &value, ListenSocketConfig &retval)
void output(std::ostream &os) const override
static bool bindToLoopback
void checkPathLength(const std::string &original, size_t max_len)
ListenSocketUnixFile(const std::string &_name, const std::string &_dir, const std::string &_fname)
virtual size_t prepSockaddrUn(sockaddr_un &addr) const =0
static std::ostream & operator<<(std::ostream &os, const DummyMatRegContainer &d)
ListenSocketConfig listenSocketUnixFileConfig(std::string dir, std::string fname)
ListenSocketPtr build(const std::string &name) const
Interface for things with names.
ListenSocketUnix(const std::string &_name)
ListenSocketConfig listenSocketInetConfig(int port)
void output(std::ostream &os) const override
static bool listeningDisabled
The following variables are only used by socket unit tests: listeningDisabled, anyListening,...
static int acceptCloexec(int sockfd, struct sockaddr *addr, socklen_t *addrlen)
ListenSocketConfig(Builder _builder)
ListenSocketInet(const std::string &_name, int port)
ListenSocket(const std::string &_name)
ListenSocketUnixAbstract(const std::string &_name, const std::string &_path)
static bool allDisabled()
virtual void output(std::ostream &os) const =0
ListenSocketConfig listenSocketUnixAbstractConfig(std::string path)
const std::string & name()
static int socketCloexec(int domain, int type, int protocol)
static void loopbackOnly()
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
static ListenSocketConfig listenSocketEmptyConfig()
std::function< ListenSocketPtr(const std::string &name)> Builder
size_t prepSockaddrUn(sockaddr_un &addr) const override
void output(std::ostream &os) const override
size_t prepSockaddrUn(sockaddr_un &addr) const override
std::unique_ptr< ListenSocket > ListenSocketPtr
Generated on Sun Jul 30 2023 01:56:51 for gem5 by doxygen 1.8.17