Compare commits
2 Commits
8830d1abdb
...
v0.1.16
| Author | SHA1 | Date | |
|---|---|---|---|
| de561d5170 | |||
| ea7529c1d7 |
@@ -6,6 +6,7 @@
|
|||||||
#include "log-sink-file.h"
|
#include "log-sink-file.h"
|
||||||
#include "proxy-configurator.h"
|
#include "proxy-configurator.h"
|
||||||
#include "cache-cleaner.h"
|
#include "cache-cleaner.h"
|
||||||
|
#include "xbox-fixes.h"
|
||||||
|
|
||||||
#include <seallib/log.h>
|
#include <seallib/log.h>
|
||||||
#include <tinymitm/proxy.h>
|
#include <tinymitm/proxy.h>
|
||||||
@@ -103,9 +104,11 @@ bool run()
|
|||||||
conf = new ProxyConfigurator();
|
conf = new ProxyConfigurator();
|
||||||
conf->setProxy("127.0.0.1", 44444);
|
conf->setProxy("127.0.0.1", 44444);
|
||||||
|
|
||||||
mainLog.info("Instantiating spoofer and registering proxy listeners");
|
mainLog.info("Instantiating and registering proxy listeners");
|
||||||
Spoofer* spoofer = new Spoofer();
|
Spoofer* spoofer = new Spoofer();
|
||||||
|
XboxFixes* xboxFix = new XboxFixes();
|
||||||
spoofer->registerListeners(proxy);
|
spoofer->registerListeners(proxy);
|
||||||
|
xboxFix->registerListeners(proxy);
|
||||||
|
|
||||||
mainLog.info("Starting proxy");
|
mainLog.info("Starting proxy");
|
||||||
if (!proxy->init())
|
if (!proxy->init())
|
||||||
@@ -117,7 +120,6 @@ bool run()
|
|||||||
}
|
}
|
||||||
|
|
||||||
mainLog.info("Setting up system tray icon");
|
mainLog.info("Setting up system tray icon");
|
||||||
|
|
||||||
TrayIcon tray;
|
TrayIcon tray;
|
||||||
tray.setExitCallback([&]() {
|
tray.setExitCallback([&]() {
|
||||||
running = false;
|
running = false;
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ Spoofer::~Spoofer()
|
|||||||
delete _log;
|
delete _log;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Spoofer::registerListeners(TinyMITMProxy* proxy)
|
void Spoofer::registerListeners(TinyMITMProxy* proxy)
|
||||||
{
|
{
|
||||||
proxy->onClientRequest.addListener(
|
proxy->onClientRequest.addListener(
|
||||||
|
|||||||
@@ -0,0 +1,28 @@
|
|||||||
|
#include "xbox-fixes.h"
|
||||||
|
|
||||||
|
#include <tinymitm/proxy.h>
|
||||||
|
|
||||||
|
XboxFixes::XboxFixes() {}
|
||||||
|
|
||||||
|
XboxFixes::~XboxFixes() {}
|
||||||
|
|
||||||
|
void XboxFixes::registerListeners(TinyMITMProxy* proxy)
|
||||||
|
{
|
||||||
|
proxy->onServerResponse.addListener(
|
||||||
|
[this](const std::string& url, std::string& body, std::string& headers, bool wasBlocked) {
|
||||||
|
this->serverResponseHandler(url, body, headers, wasBlocked);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
void XboxFixes::antiCensor(std::string& body)
|
||||||
|
{
|
||||||
|
body = R"-({"verifyStringResult":[{"resultCode":0,"offendingString":null}]})-";
|
||||||
|
}
|
||||||
|
|
||||||
|
void XboxFixes::serverResponseHandler(const std::string& url, std::string& body, std::string& /*headers*/,
|
||||||
|
bool& /*blockOutgoing*/)
|
||||||
|
{
|
||||||
|
if (url.find("xboxlive.com") == std::string::npos) return;
|
||||||
|
|
||||||
|
if (url.ends_with("/system/strings/validate")) return antiCensor(body);
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
class TinyMITMProxy;
|
||||||
|
|
||||||
|
class XboxFixes
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XboxFixes();
|
||||||
|
~XboxFixes();
|
||||||
|
|
||||||
|
void registerListeners(TinyMITMProxy* proxy);
|
||||||
|
|
||||||
|
private:
|
||||||
|
void antiCensor(std::string& body);
|
||||||
|
|
||||||
|
void serverResponseHandler(const std::string& url, std::string& body, std::string& headers,
|
||||||
|
bool& blockOutgoing);
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user