Skip to content

Commit 720522e

Browse files
committed
Separate sessions by endpoint
1 parent c247ffc commit 720522e

File tree

2 files changed

+11
-11
lines changed

2 files changed

+11
-11
lines changed

src/Discord/OAuth2Authenticator.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@ protected function getConnections(): ?object
7272
foreach($connections as $__ => $connection)
7373
{
7474
if (isset($connection->type)) {
75-
$this->sessions[$this->requesting_ip]["oauth_{$connection->type}_id"] = $connection->id;
76-
$this->sessions[$this->requesting_ip]["oauth_{$connection->type}_name"] = $connection->name;
77-
if ($connection->type == 'steam') $this->sessions[$this->requesting_ip]['oauth_steam_url'] = "https://steamcommunity.com/profiles/{$connection->id}/";
75+
$this->sessions[$this->endpoint_name][$this->requesting_ip]["oauth_{$connection->type}_id"] = $connection->id;
76+
$this->sessions[$this->endpoint_name][$this->requesting_ip]["oauth_{$connection->type}_name"] = $connection->name;
77+
if ($connection->type == 'steam') $this->sessions[$this->endpoint_name][$this->requesting_ip]['oauth_steam_url'] = "https://steamcommunity.com/profiles/{$connection->id}/";
7878
}
7979
}
8080
return $connections;

src/VerifierServer/OAuth2Authenticator.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -80,12 +80,12 @@ public function __construct(
8080
$this->allowed_uri[] = "$scheme://$resolved_ip:$http_port/{$this->endpoint_name}";
8181
}
8282

83-
$this->state = isset($this->sessions[$this->requesting_ip], $this->sessions[$this->requesting_ip]['state'])
84-
? $this->sessions[$this->requesting_ip]['state']
85-
: $this->sessions[$this->requesting_ip]['state'] = uniqid();
83+
$this->state = isset($this->sessions[$this->endpoint_name][$this->requesting_ip], $this->sessions[$this->endpoint_name][$this->requesting_ip]['state'])
84+
? $this->sessions[$this->endpoint_name][$this->requesting_ip]['state']
85+
: $this->sessions[$this->endpoint_name][$this->requesting_ip]['state'] = uniqid();
8686

87-
if (isset($this->sessions[$this->requesting_ip]['access_token'])) {
88-
$this->access_token = $this->sessions[$this->requesting_ip]['access_token'];
87+
if (isset($this->sessions[$this->endpoint_name][$this->requesting_ip]['access_token'])) {
88+
$this->access_token = $this->sessions[$this->endpoint_name][$this->requesting_ip]['access_token'];
8989
$this->getUser();
9090
}
9191
}
@@ -158,7 +158,7 @@ public function logout(
158158
string &$body
159159
): void
160160
{
161-
unset($this->sessions[$this->requesting_ip]);
161+
unset($this->sessions[$this->endpoint_name][$this->requesting_ip]);
162162
$response = Response::STATUS_FOUND;
163163
$headers = ['Location' => ($this->redirect_home ?? $this->default_redirect)];
164164
$body = '';
@@ -185,7 +185,7 @@ public function removeToken(
185185
'access_token' => $this->access_token
186186
]
187187
);
188-
unset($this->sessions[$this->requesting_ip]['access_token']);
188+
unset($this->sessions[$this->endpoint_name][$this->requesting_ip]['access_token']);
189189
}
190190

191191
public function getToken(
@@ -232,7 +232,7 @@ public function getToken(
232232
$response = Response::STATUS_FOUND;
233233
$headers = ['Location' => $this->redirect_home];
234234
$body = '';
235-
return $this->sessions[$this->requesting_ip]['access_token'] = $api_response->access_token;
235+
return $this->sessions[$this->endpoint_name][$this->requesting_ip]['access_token'] = $api_response->access_token;
236236
}
237237

238238
public function getUser(): ?object

0 commit comments

Comments
 (0)