Lines Matching defs:fwmark
19 #include "Fwmark.h"
88 Fwmark fwmark;
89 socklen_t fwmarkLen = sizeof(fwmark.intValue);
90 if (getsockopt(*socketFd, SOL_SOCKET, SO_MARK, &fwmark.intValue, &fwmarkLen) == -1) {
100 permission = static_cast<Permission>(permission | fwmark.permission);
105 // Called before a socket connect() happens. Set an appropriate NetId into the fwmark so
138 if (!fwmark.explicitlySelected) {
139 if (!fwmark.protectedFromVpn) {
140 fwmark.netId = mNetworkController->getNetworkForConnect(client->getUid());
141 } else if (!mNetworkController->isVirtualNetwork(fwmark.netId)) {
142 fwmark.netId = mNetworkController->getDefaultNetwork();
149 fwmark.netId = command.netId;
151 fwmark.explicitlySelected = false;
152 fwmark.protectedFromVpn = false;
159 fwmark.explicitlySelected = true;
160 fwmark.protectedFromVpn = mNetworkController->canProtect(client->getUid());
175 if (!fwmark.explicitlySelected && mNetworkController->isVirtualNetwork(fwmark.netId)) {
176 fwmark.netId = mNetworkController->getDefaultNetwork();
178 fwmark.protectedFromVpn = true;
179 permission = static_cast<Permission>(permission | fwmark.permission);
187 fwmark.netId = mNetworkController->getNetworkForUser(command.uid);
188 fwmark.protectedFromVpn = true;
198 fwmark.permission = permission;
200 if (setsockopt(*socketFd, SOL_SOCKET, SO_MARK, &fwmark.intValue,
201 sizeof(fwmark.intValue)) == -1) {