mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-22 22:21:10 +02:00
sys-apps/ignition: pull akamai patch
this pull a fix for Akamai Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
This commit is contained in:
parent
646deae89f
commit
4248ce2201
@ -0,0 +1,48 @@
|
|||||||
|
From c39e78052f563bbbf6ed47c4ddab597562effe87 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
|
||||||
|
Date: Mon, 24 Jun 2024 16:38:09 +0200
|
||||||
|
Subject: [PATCH] akamai: fix base64 decoding
|
||||||
|
|
||||||
|
trailing \x00 character was making Ignition to fail parsing the config.
|
||||||
|
It is not always the case, that is why we did not catch it earlier: when
|
||||||
|
there is no padding in the base64 payload, everything was working.
|
||||||
|
|
||||||
|
https://pkg.go.dev/encoding/base64#Encoding.Decode
|
||||||
|
|
||||||
|
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
|
||||||
|
---
|
||||||
|
docs/release-notes.md | 1 +
|
||||||
|
internal/providers/akamai/akamai.go | 5 +++--
|
||||||
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/docs/release-notes.md b/docs/release-notes.md
|
||||||
|
index a73ea2a7c..c2a35dca9 100644
|
||||||
|
--- a/docs/release-notes.md
|
||||||
|
+++ b/docs/release-notes.md
|
||||||
|
@@ -14,6 +14,7 @@ nav_order: 9
|
||||||
|
|
||||||
|
### Bug fixes
|
||||||
|
|
||||||
|
+- Fixed Akamai Ignition base64 decoding
|
||||||
|
|
||||||
|
## Ignition 2.19.0 (2024-06-05)
|
||||||
|
|
||||||
|
diff --git a/internal/providers/akamai/akamai.go b/internal/providers/akamai/akamai.go
|
||||||
|
index c7debf3b1..648be3bee 100644
|
||||||
|
--- a/internal/providers/akamai/akamai.go
|
||||||
|
+++ b/internal/providers/akamai/akamai.go
|
||||||
|
@@ -86,11 +86,12 @@ func fetchConfig(f *resource.Fetcher) (types.Config, report.Report, error) {
|
||||||
|
// The Linode Metadata Service requires userdata to be base64-encoded
|
||||||
|
// when it is uploaded, so we will have to decode the response.
|
||||||
|
data := make([]byte, base64.StdEncoding.DecodedLen(len(encoded)))
|
||||||
|
- if _, err := base64.StdEncoding.Decode(data, encoded); err != nil {
|
||||||
|
+ n, err := base64.StdEncoding.Decode(data, encoded)
|
||||||
|
+ if err != nil {
|
||||||
|
return types.Config{}, report.Report{}, fmt.Errorf("decode base64: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
- return util.ParseConfig(f.Logger, data)
|
||||||
|
+ return util.ParseConfig(f.Logger, data[:n])
|
||||||
|
}
|
||||||
|
|
||||||
|
// defaultTokenTTL is the time-to-live (TTL; in seconds) for an authorization
|
@ -61,6 +61,7 @@ PATCHES=(
|
|||||||
"${FILESDIR}/0019-usr-share-oem-oem.patch"
|
"${FILESDIR}/0019-usr-share-oem-oem.patch"
|
||||||
"${FILESDIR}/0020-internal-exec-stages-mount-Mount-oem.patch"
|
"${FILESDIR}/0020-internal-exec-stages-mount-Mount-oem.patch"
|
||||||
"${FILESDIR}/0021-sgdisk-Run-partprobe-after-partition-changes.patch"
|
"${FILESDIR}/0021-sgdisk-Run-partprobe-after-partition-changes.patch"
|
||||||
|
"${FILESDIR}/0022-akamai-fix-base64-decoding.patch"
|
||||||
)
|
)
|
||||||
|
|
||||||
src_compile() {
|
src_compile() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user