iauth: add enums, fix struct member names
This commit is contained in:
@ -16,7 +16,7 @@ void iauth_set_config(struct amcus_config *cfg)
|
||||
|
||||
static ULONG REF_COUNT = 0;
|
||||
static bool is_init = true;
|
||||
static int amauthd_state = 9;
|
||||
static int amauthd_state = DAEMON_DL;
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_QueryInterface(IAuth FAR *This, REFIID riid, void **ppvObj)
|
||||
{
|
||||
@ -31,7 +31,7 @@ static HRESULT STDMETHODCALLTYPE IAuth_QueryInterface(IAuth FAR *This, REFIID ri
|
||||
*ppvObj = This;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
|
||||
return E_NOINTERFACE;
|
||||
}
|
||||
|
||||
@ -54,7 +54,7 @@ static HRESULT STDMETHODCALLTYPE IAuth_Initialize(IAuth FAR *This, int64_t p0)
|
||||
return 1;
|
||||
}
|
||||
is_init = true;
|
||||
amauthd_state = 5;
|
||||
amauthd_state = DAEMON_INIT;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ static HRESULT STDMETHODCALLTYPE IAuth_Finalize(IAuth FAR *This)
|
||||
return 1;
|
||||
}
|
||||
is_init = false;
|
||||
amauthd_state = 0;
|
||||
amauthd_state = DAEMON_UNKNOWN;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -97,9 +97,9 @@ static HRESULT STDMETHODCALLTYPE IAuth_Func8(IAuth FAR *This)
|
||||
}
|
||||
|
||||
// Likely has to do with mucha and the updater
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_GetUpdaterState(IAuth FAR *This, struct amcus_updater_state *arr)
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_GetUpdaterState(IAuth FAR *This, struct amcus_state *arr)
|
||||
{
|
||||
// dprintf("IAuth: %s hit!\n", __func__);
|
||||
// dprintf("IAuth: %s hit!\n", __func__);
|
||||
memset(arr, 0, sizeof(*arr));
|
||||
|
||||
char cacfg_ver[6];
|
||||
@ -113,42 +113,41 @@ static HRESULT STDMETHODCALLTYPE IAuth_GetUpdaterState(IAuth FAR *This, struct a
|
||||
ver_btm %= (ver_top * 100);
|
||||
}
|
||||
|
||||
arr->Member0.Member0 = 15;
|
||||
arr->Member0.Member8 = 2;
|
||||
arr->Member0.MemberC = 1;
|
||||
arr->allnet_state.state = DAEMON_IDLE;
|
||||
arr->allnet_state.auth_state = 2;
|
||||
arr->allnet_state.auth_count = 1;
|
||||
|
||||
arr->Member18.Member0 = 9;
|
||||
arr->Member18.Member8 = 2;
|
||||
arr->Member18.MemberC = 1;
|
||||
arr->Member18.Member10 = 27;
|
||||
arr->Member18.Member14 = 32;
|
||||
arr->Member18.Member18 = 43;
|
||||
arr->Member18.Member1C = 52;
|
||||
arr->Member18.Member20 = 59;
|
||||
arr->Member18.cacfg_ver_whole = ver_top;
|
||||
arr->Member18.cacfg_ver_decimal = ver_btm;
|
||||
arr->Member18.app_ver_whole = ver_top;
|
||||
arr->Member18.app_ver_decimal = ver_btm;
|
||||
arr->Member18.Member60 = 1;
|
||||
arr->mucha_state.state = DAEMON_DL;
|
||||
arr->mucha_state.auth_state = 2;
|
||||
arr->mucha_state.auth_count = 1;
|
||||
arr->mucha_state.state_dlexec = DLEXEC_PROC;
|
||||
arr->mucha_state.state_dlstep = DLSTEP_IDLE;
|
||||
arr->mucha_state.state_dllan = DLLAN_DISABLE;
|
||||
arr->mucha_state.state_dlwan = DLWAN_COMPLETE;
|
||||
arr->mucha_state.state_io = DAEMON_IO_NONE;
|
||||
arr->mucha_state.cacfg_ver_major = ver_top;
|
||||
arr->mucha_state.cacfg_ver_minor = ver_btm;
|
||||
arr->mucha_state.app_ver_major = ver_top;
|
||||
arr->mucha_state.app_ver_minor = ver_btm;
|
||||
arr->mucha_state.dl_check_complete = 1;
|
||||
|
||||
arr->clock_status = 1;
|
||||
arr->network_mode = 1;
|
||||
arr->cab_type = 3;
|
||||
arr->amauth_init_state = amauthd_state;
|
||||
arr->MemberC4 = 0;
|
||||
arr->auth_type = AUTH_TYPE_ALLNET;
|
||||
arr->cab_mode = DAEMON_MODE_STANDALONE;
|
||||
arr->state = amauthd_state;
|
||||
|
||||
switch (amauthd_state) {
|
||||
case 5: amauthd_state = 6; break;
|
||||
case 6: amauthd_state = 15; break;
|
||||
case 15: amauthd_state = 9; break;
|
||||
case DAEMON_INIT: amauthd_state = DAEMON_AUTH_START; break;
|
||||
case DAEMON_AUTH_START: amauthd_state = DAEMON_IDLE; break;
|
||||
case DAEMON_IDLE: amauthd_state = DAEMON_DL; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
|
||||
// Valid valnues for mode are STANDALONE, CLIENT, SERVER
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_GetCabinetConfig(IAuth FAR *This, struct amcus_cab_config *arr)
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_GetCabinetConfig(IAuth FAR *This, struct amcus_network_state *arr)
|
||||
{
|
||||
// dprintf("IAuth: %s hit!\n", __func__);
|
||||
|
||||
@ -160,20 +159,21 @@ static HRESULT STDMETHODCALLTYPE IAuth_GetCabinetConfig(IAuth FAR *This, struct
|
||||
char dongle_serial[13];
|
||||
|
||||
wcstombs_s(NULL, am_serial, sizeof(am_serial), config.am_serial, sizeof(config.am_serial));
|
||||
// TODO: read the serial off a real dongle if enabled is 0
|
||||
wcstombs_s(NULL, dongle_serial, sizeof(dongle_serial), config.dongle.serial, sizeof(config.dongle.serial));
|
||||
|
||||
strcpy_s(arr->mode, sizeof(arr->mode), "STANDALONE");
|
||||
strcpy_s(arr->pcbid, sizeof(arr->pcbid), am_serial);
|
||||
strcpy_s(arr->dongle_serial, sizeof(arr->dongle_serial), dongle_serial);
|
||||
strcpy_s(arr->shop_router_ip, sizeof(arr->shop_router_ip), "192.168.123.254");
|
||||
strcpy_s(arr->auth_server_ip, sizeof(arr->auth_server_ip), "192.168.1.114");
|
||||
strcpy_s(arr->local_ip, sizeof(arr->local_ip), "192.168.123.11");
|
||||
strcpy_s(arr->subnet_mask, sizeof(arr->subnet_mask), "255.255.225.0");
|
||||
strcpy_s(arr->gateway, sizeof(arr->gateway), "192.168.123.254");
|
||||
strcpy_s(arr->primary_dns, sizeof(arr->primary_dns), "192.168.1.3");
|
||||
|
||||
// TODO: Load fake IP addresses from config
|
||||
strcpy_s(arr->shop_router_ip, sizeof(arr->shop_router_ip), "192.168.123.254"); // router ip
|
||||
strcpy_s(arr->auth_server_ip, sizeof(arr->auth_server_ip), "192.168.1.114"); // "default" in dnshook
|
||||
strcpy_s(arr->local_ip, sizeof(arr->local_ip), "192.168.123.11"); // fake ip
|
||||
strcpy_s(arr->subnet_mask, sizeof(arr->subnet_mask), "255.255.225.0"); // fake subnet
|
||||
strcpy_s(arr->gateway, sizeof(arr->gateway), "192.168.123.254"); // router ip
|
||||
strcpy_s(arr->primary_dns, sizeof(arr->primary_dns), "192.168.1.3"); // ??
|
||||
arr->hop_count = 1;
|
||||
arr->line_type = 1;
|
||||
arr->line_type = TYPE_FFT;
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
@ -286,7 +286,7 @@ static HRESULT STDMETHODCALLTYPE IAuth_GetMuchaAuthResponse(IAuth FAR *This, str
|
||||
if (!is_init) {
|
||||
return E_ACCESSDENIED;
|
||||
}
|
||||
|
||||
|
||||
strcpy_s(arr->shop_name, sizeof(arr->shop_name), "Test Shop!");
|
||||
strcpy_s(arr->shop_name_en, sizeof(arr->shop_name_en), "Test Shop!");
|
||||
strcpy_s(arr->shop_nickname, sizeof(arr->shop_nickname), "Test Shop");
|
||||
@ -320,14 +320,14 @@ static HRESULT STDMETHODCALLTYPE IAuth_GetMuchaAuthResponse(IAuth FAR *This, str
|
||||
}
|
||||
|
||||
// Another struct
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_Func19(IAuth FAR *This, struct amcus_arr19 *arr)
|
||||
static HRESULT STDMETHODCALLTYPE IAuth_Func19(IAuth FAR *This, struct mucha_updater_state *arr)
|
||||
{
|
||||
// dprintf("IAuth: %s hit!\n", __func__);
|
||||
memset(arr, 0, sizeof(*arr));
|
||||
if (!is_init) {
|
||||
return E_ACCESSDENIED;
|
||||
}
|
||||
arr->Member0 = 1; // if this isn't 1 taiko thinks it isn't auth'd
|
||||
arr->state = 1; // if this isn't 1 taiko thinks it isn't auth'd
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -486,4 +486,4 @@ IAuth iauth_stub_object = {
|
||||
.lpVtbl = &iauth_vtbl,
|
||||
};
|
||||
|
||||
IAuth *iauth_stub = &iauth_stub_object;
|
||||
IAuth *iauth_stub = &iauth_stub_object;
|
||||
|
Reference in New Issue
Block a user