Commit 86c76cad authored by hwware's avatar hwware
Browse files

add check for not switching between optin optout mode directly

parent 1ef44f82
...@@ -2314,7 +2314,7 @@ NULL ...@@ -2314,7 +2314,7 @@ NULL
return; return;
} }
if ((options & CLIENT_TRACKING_OPTIN) && (options & CLIENT_TRACKING_OPTOUT)) if (options & CLIENT_TRACKING_OPTIN && options & CLIENT_TRACKING_OPTOUT)
{ {
addReplyError(c, addReplyError(c,
"You can't specify both OPTIN mode and OPTOUT mode"); "You can't specify both OPTIN mode and OPTOUT mode");
...@@ -2322,6 +2322,17 @@ NULL ...@@ -2322,6 +2322,17 @@ NULL
return; return;
} }
if ((options & CLIENT_TRACKING_OPTIN && c->flags & CLIENT_TRACKING_OPTOUT) ||
(options & CLIENT_TRACKING_OPTOUT && c->flags & CLIENT_TRACKING_OPTIN))
{
addReplyError(c,
"You can't switch OPTIN/OPTOUT mode before disabling "
"tracking for this client, and then re-enabling it with "
"a different mode.");
zfree(prefix);
return;
}
enableTracking(c,redir,options,prefix,numprefix); enableTracking(c,redir,options,prefix,numprefix);
} else if (!strcasecmp(c->argv[2]->ptr,"off")) { } else if (!strcasecmp(c->argv[2]->ptr,"off")) {
disableTracking(c); disableTracking(c);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment