151 Commits

Author SHA1 Message Date
Spotlight
e1325a2681
Prefer two spaces over a tab
Goes with BroadOn's presumed XML standards.
2021-05-23 16:43:27 -05:00
Spotlight
80601c7788
Add debug config option 2021-05-23 16:42:41 -05:00
Spotlight
6ceeb68dfc
Add preliminary support for purchase history querying 2021-05-06 17:59:59 -05:00
Spotlight
6221b6dac2
Draft a new major version
There are so many changes...
2021-05-03 18:56:21 -05:00
Spotlight
346859afe5
Use pgx for connections 2021-05-03 18:37:02 -05:00
Spotlight
0c1463c90c
Convert to PostgreSQL schema 2021-05-03 13:36:28 -05:00
Spotlight
765d85da98
Update dependencies 2021-05-03 02:07:10 -05:00
Spotlight
3182d4dd7e
Properly implement SyncRegistration
This additionally updates GetRegistrationInfo to use similar logic. The two are the exact same function within both the ECDK and the Wii Shop Channel's ESHOP SDK - they differ only in name, authentication level, and a single key.
2020-12-25 04:27:53 -06:00
Spotlight
8009f1a510
Reduce security
Nintendo makes the unfortunate decision of sending the plaintext token to the client in a few requests.

Instead of storing a SHA-256 hash of the MD5 we expect from the Wii, we now store both the computed MD5 and plaintext generated token during registration.

The author of this commit apologizes.
2020-12-25 01:45:38 -06:00
Spotlight
7558aeed43
Implement GetECConfig 2020-12-23 05:05:18 -06:00
Spotlight
e0f676f1f5
Update dependencies 2020-12-21 14:42:55 -06:00
Spotlight
67df1d307c
Add proper account querying 2020-09-10 19:24:32 -05:00
Spotlight
6620df7d27
Syncronize schema 2020-09-05 10:43:05 -05:00
Spotlight
8e17fe4585
Add proper authentication 2020-09-05 10:34:24 -05:00
Spotlight
37fb20d8df
Restructure requests to route-based format
Instead of individual handlers, each request deals with one Envelope. This allows fine-tuned error control, along with what's effectively middleware for authentication.
2020-09-05 08:58:01 -05:00
Spotlight
e9445110b0
Add preliminary ticket support
This needs authentication, which is the next task requiring a restructure.
2020-09-05 06:44:03 -05:00
Spotlight
5cbf9f81a8
Add proper registration response 2020-08-20 23:19:21 -05:00
Spotlight
de5c682dd5
Use more precise timestamp 2020-08-18 22:35:13 -05:00
Spotlight
a3355a7b69
Implement GetChallenge 2020-08-18 16:07:36 -05:00
Spotlight
7c7ac06509
Avoid redundant field struct usage 2020-08-18 14:38:28 -05:00
Spotlight
f32e2a5f2e
Convert sprintf-based XML handling to struct-based marshalling
This allows the opportunity to have various handler methods for inserting XML data, instead of a jungle between properly parsing and string-based prayer.
2020-08-18 05:35:53 -05:00
Spotlight
3427d96df4
Use original error message upon empty or invalid action specification 2020-08-17 01:20:36 -05:00
Spotlight
e588ba6e68
Refactor HTTP handling logic
This is an extraordinarily large commit, and in hindsight would have benefitied from being written separately.

To summarise:

-  Converts namespace URI parsing to a regex, instead of convoluted string logic
 - Removes per-request XML structures in favor of normalised XPath queries
 - Moves common variables for all requests to a k/v map of their name and contents, in order to reduce function parameter count
 - Changes the name of the ECS action "NotifiedETicketsSynced" to its hardcoded (tenseless) name, "NotifyETicketsSynced"
 - Improved properly reporting errors to the end user in areas
2020-08-16 23:06:09 -05:00
Spotlight
9088111c4e
Split responses into templates 2020-07-28 04:24:02 -05:00
Spotlight
ce7afd94ec
Split handlers into their individual files
Eventually, this will allow for us to cover further namespaces, such as CCS or NUS proper.
2020-07-28 03:47:14 -05:00
Spotlight
fcdfdad403
Update copyright 2020-07-28 00:40:55 -05:00
Spotlight
0e3490357d
Graft WiiSOAP to EC's expected request behaviour (#12)
* Update module repo path

* Use SOAPAction for request interpretation
2020-07-28 12:10:36 +10:00
CornierKhan1
f0c243bc9c
Update README.md 2020-05-12 14:49:25 +10:00
CornierKhan1
fbf26bb559
Testing smh 2020-04-15 20:34:10 +10:00
CornierKhan1
f9cd055951 Added TODO. Strings contains needed? 2019-12-20 13:16:10 +11:00
CornierKhan1
191bcf319a
Eliminate uwu owo from example config.
zoinks
2019-12-19 13:37:27 +11:00
CornierKhan1
2b1c22c37b
Unfreeze Project, let the development commence! 2019-12-19 13:29:44 +11:00
CornierKhan1
001671e2c1
Update README.md 2019-06-20 12:34:15 +10:00
CornierKhan1
257a177992
Merge pull request #7 from Apfel/master
yet another fix
2019-06-20 12:31:47 +10:00
Apfel
62ab30fbe3 Bumped version 2019-03-14 03:01:27 +01:00
Apfel
e578d6e4d2 no need to export this 2019-03-14 02:59:20 +01:00
Apfel
c6427795ef Moved the config example 2019-03-14 02:58:43 +01:00
Apfel
896cf1affa once again, a better name in the config 2019-03-14 02:58:14 +01:00
Apfel
1ebff33f5d added go.mod 2019-03-14 02:56:29 +01:00
Apfel
fb3099169e fixed error handling 2019-03-14 02:56:18 +01:00
CornierKhan1
482c9dc5f6
Update README.md 2019-03-02 21:31:44 +11:00
CornierKhan1
13ac40d093
Update README.md 2019-03-02 21:24:35 +11:00
CornierKhan1
30a837ad6f
Update structure.go 2019-03-02 21:23:19 +11:00
CornierKhan1
e34c6bc681
Update main.go 2019-03-02 21:22:40 +11:00
CornierKhan1
e1d549158d
Merge pull request #6 from Apfel/master
Minor changes
2019-02-12 21:25:03 +11:00
Apfel
6a2396a2c3 Added ChangeLog for 2.5.0 Kawauso 2019-02-12 07:08:17 +01:00
Apfel
284b84e3f9 An extra commit to hide the typo 2019-02-12 07:01:48 +01:00
Apfel
d62d10d6e9 Too high version, apolgies 2019-02-12 07:00:48 +01:00
Apfel
b550c67909 Bump version 2019-02-12 07:00:22 +01:00
Apfel
143f7debd8 Using a more appropriate name for the Address 2019-02-12 06:59:48 +01:00