From f68105b079091e53b5cd82f12de966a8aabbf357 Mon Sep 17 00:00:00 2001 From: Johannes Bosecker Date: Fri, 12 Feb 2021 18:58:04 +0100 Subject: [PATCH] Added license notice. (#28) --- NOTICE | 22 ++++++++++++ Sources/ExtrasBase64/Chromium.swift | 55 +++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 NOTICE diff --git a/NOTICE b/NOTICE new file mode 100644 index 0000000..d270b62 --- /dev/null +++ b/NOTICE @@ -0,0 +1,22 @@ + +swift-extras-base64 +=================== + +This product contains a derivation of Daniel Lemire's 'chromiumbase64' +implementation in 'fastbase64'. + + * LICENSE: + * https://github.com/lemire/fastbase64/blob/master/LICENSE + * HOMEPAGE: + * https://github.com/lemire/fastbase64 + +--- + +This product contains a derivation of Nick Galbreath's 'base64' +implementation in 'stringencoders'. + + * LICENSE (The MIT License): + * https://github.com/client9/stringencoders/blob/master/LICENSE + * HOMEPAGE: + * https://github.com/client9/stringencoders + diff --git a/Sources/ExtrasBase64/Chromium.swift b/Sources/ExtrasBase64/Chromium.swift index 78f7a58..bff29ab 100644 --- a/Sources/ExtrasBase64/Chromium.swift +++ b/Sources/ExtrasBase64/Chromium.swift @@ -1,5 +1,60 @@ +// This base64 implementation is heavily inspired by: + // https://github.com/lemire/fastbase64/blob/master/src/chromiumbase64.c +/* + Copyright (c) 2015-2016, Wojciech Muła, Alfred Klomp, Daniel Lemire + (Unless otherwise stated in the source code) + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +// https://github.com/client9/stringencoders/blob/master/src/modp_b64.c +/* + The MIT License (MIT) + + Copyright (c) 2016 Nick Galbreath + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + */ // MARK: - Encoding -