Merge main: OpsLog's own Club Log API key
This commit is contained in:
+6
-2
@@ -2,8 +2,12 @@
|
|||||||
{
|
{
|
||||||
"version": "0.26.0",
|
"version": "0.26.0",
|
||||||
"date": "",
|
"date": "",
|
||||||
"en": [],
|
"en": [
|
||||||
"fr": []
|
"Club Log uploads are now identified as OpsLog. They were credited to another station's application key, which took the blame for them."
|
||||||
|
],
|
||||||
|
"fr": [
|
||||||
|
"Les envois Club Log s’identifient désormais comme OpsLog. Ils étaient attribués à la clé applicative d’une autre station, qui en portait la responsabilité."
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"version": "0.25.9",
|
"version": "0.25.9",
|
||||||
|
|||||||
@@ -40,12 +40,26 @@ func looksLikeHTML(s string) bool {
|
|||||||
// anything in the operator's log, which is what a test button must never do.
|
// anything in the operator's log, which is what a test button must never do.
|
||||||
const clublogDownloadURL = "https://clublog.org/getadif.php"
|
const clublogDownloadURL = "https://clublog.org/getadif.php"
|
||||||
|
|
||||||
// clublogAppAPIKey is OpsLog's Club Log *application* API key. Club Log
|
// clublogAppAPIKey is OpsLog's own Club Log *application* API key, issued to
|
||||||
// requires an api parameter that identifies the client software (not the
|
// "OpsLog" by G7VJR on 2026-08-18.
|
||||||
// user) — the same way Log4OM embeds its own key — so we ship it baked in
|
//
|
||||||
// rather than asking each user for one. It's an application identifier, not
|
// Club Log requires an api parameter identifying the client SOFTWARE, not the
|
||||||
// a user secret, but note it is visible in the source and the binary.
|
// user — the same way Log4OM embeds its own — so it ships baked in rather than
|
||||||
const clublogAppAPIKey = "5767f19333363a9ef432ee9cd4141fe76b8adf38"
|
// asking every operator to request one.
|
||||||
|
//
|
||||||
|
// It replaces a key that was registered to XV9Q, not to OpsLog. That was not a
|
||||||
|
// cosmetic detail: every OpsLog upload in the world was attributed to that
|
||||||
|
// callsign, its owner received the abuse warnings OpsLog earned, and a
|
||||||
|
// revocation aimed at them would have cut Club Log uploads for every user of
|
||||||
|
// this program at once.
|
||||||
|
//
|
||||||
|
// Club Log asks that the key not be published in source code. The source lives
|
||||||
|
// on a private remote and only the built exe is released — but the key is still
|
||||||
|
// recoverable from that binary by anyone who looks, as it is for every logger
|
||||||
|
// that embeds one. Treat it as an identifier that can be attributed, never as a
|
||||||
|
// secret: it authorises nothing on its own, since every request also carries the
|
||||||
|
// operator's own e-mail and password.
|
||||||
|
const clublogAppAPIKey = "8df47807a412c586787c9401c96c10c135d6e580"
|
||||||
|
|
||||||
// UploadClublog pushes one ADIF record to Club Log in real time. The user
|
// UploadClublog pushes one ADIF record to Club Log in real time. The user
|
||||||
// supplies the account email + password and the logbook callsign; the
|
// supplies the account email + password and the logbook callsign; the
|
||||||
|
|||||||
Reference in New Issue
Block a user