Compare commits
2 Commits
8830d1abdb
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| de561d5170 | |||
| ea7529c1d7 |
@@ -6,6 +6,7 @@
|
||||
#include "log-sink-file.h"
|
||||
#include "proxy-configurator.h"
|
||||
#include "cache-cleaner.h"
|
||||
#include "xbox-fixes.h"
|
||||
|
||||
#include <seallib/log.h>
|
||||
#include <tinymitm/proxy.h>
|
||||
@@ -103,9 +104,11 @@ bool run()
|
||||
conf = new ProxyConfigurator();
|
||||
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();
|
||||
XboxFixes* xboxFix = new XboxFixes();
|
||||
spoofer->registerListeners(proxy);
|
||||
xboxFix->registerListeners(proxy);
|
||||
|
||||
mainLog.info("Starting proxy");
|
||||
if (!proxy->init())
|
||||
@@ -117,7 +120,6 @@ bool run()
|
||||
}
|
||||
|
||||
mainLog.info("Setting up system tray icon");
|
||||
|
||||
TrayIcon tray;
|
||||
tray.setExitCallback([&]() {
|
||||
running = false;
|
||||
|
||||
@@ -54,6 +54,7 @@ Spoofer::~Spoofer()
|
||||
delete _log;
|
||||
}
|
||||
|
||||
|
||||
void Spoofer::registerListeners(TinyMITMProxy* proxy)
|
||||
{
|
||||
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