1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- #ifndef NETD_SERVER_VIRTUAL_NETWORK_H
- #define NETD_SERVER_VIRTUAL_NETWORK_H
- #include <set>
- #include "Network.h"
- #include "UidRanges.h"
- namespace android {
- namespace net {
- class VirtualNetwork : public Network {
- public:
- VirtualNetwork(unsigned netId, bool secure);
- virtual ~VirtualNetwork();
- bool isSecure() const;
- bool appliesToUser(uid_t uid) const;
- int addUsers(const UidRanges& uidRanges,
- const std::set<uid_t>& protectableUsers) WARN_UNUSED_RESULT;
- int removeUsers(const UidRanges& uidRanges,
- const std::set<uid_t>& protectableUsers) WARN_UNUSED_RESULT;
- private:
- Type getType() const override;
- int addInterface(const std::string& interface) override WARN_UNUSED_RESULT;
- int removeInterface(const std::string& interface) override WARN_UNUSED_RESULT;
- int maybeCloseSockets(bool add, const UidRanges& uidRanges,
- const std::set<uid_t>& protectableUsers);
- const bool mSecure;
- UidRanges mUidRanges;
- };
- }
- }
- #endif
|