File decode.cs of Package gmsa-kinit

// SPDX-FileCopyrightText: 2022 Amazon.com, Inc. or its affiliates
// SPDX-License-Identifier: Apache-2.0
// Windows seems to use UTF-16.
// For Linux use, UTF-16 strings have to be
// translated to UTF-8.
//
class EncodeToUTF8 {
    public static void Main() {
        const int inputBufferSize = 1024;
        // Reading beyond 1K is not needed for gMSA purposes

        byte[] utf16Bytes = new byte[inputBufferSize];

        System.IO.Stream inputStream = System.Console.OpenStandardInput();
        inputStream.Read(utf16Bytes, 0, inputBufferSize);

        System.Text.Encoding utf8 = System.Text.Encoding.UTF8;
        System.Text.Encoding utf16 = System.Text.Encoding.Unicode;

        byte[] utf8Bytes = System.Text.Encoding.Convert(System.Text.Encoding.Unicode,
                                System.Text.Encoding.UTF8, utf16Bytes);
        System.IO.Stream outputStream = System.Console.OpenStandardOutput();
        outputStream.Write(utf8Bytes);
    }
}
openSUSE Build Service is sponsored by