diff --git a/.github/workflows/clang-format-check.yml b/.github/workflows/clang-format-check.yml index e08b28c2ca0..86c9faaa1ce 100644 --- a/.github/workflows/clang-format-check.yml +++ b/.github/workflows/clang-format-check.yml @@ -1,16 +1,16 @@ -name: clang-format Check +name: Formatting Check on: [push, pull_request] jobs: formatting-check: - name: Formatting Check + name: clang-format-diff runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: fetch-depth: 2 - - name: Run clang-format style check for C/C++/Protobuf programs. - uses: lucasssvaz/arduino-esp32-format@v1.0 + - name: Run clang-format style check for Arduino programs. + uses: lucasssvaz/arduino-esp32-format@main with: clang-format-version: '15' check-path: ${{ matrix.path }} diff --git a/cores/esp32/dummy.cpp b/cores/esp32/dummy.cpp new file mode 100644 index 00000000000..1fc144e2659 --- /dev/null +++ b/cores/esp32/dummy.cpp @@ -0,0 +1,64 @@ +/** + * base64.cpp + * + * Created on: 09.12.2015 + * + * Copyright (c) 2015 Markus Sattler. All rights reserved. + * This file is part of the ESP31B core for Arduino. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +#include "Arduino.h" +extern "C" { +#include "libb64/cdecode.h" +#include "libb64/cencode.h" +} +#include "base64.h" + +/** + * convert input data to base64 + * @param data const uint8_t * + * @param length size_t + * @return String + */ +String base64::encode(const uint8_t * data, size_t length) +{ + size_t size = base64_encode_expected_len(length) + 1; + char * buffer = (char *) malloc(size); + if(buffer) { + base64_encodestate _state; + base64_init_encodestate(&_state); + int len = base64_encode_block((const char *) &data[0], length, &buffer[0], &_state); + len = base64_encode_blockend((buffer + len), &_state); + + String base64 = String(buffer); + free(buffer); + return base64; + } + return String("-FAIL-"); +} + +/** + * convert input data to base64 + * @param text const String& + * @return String + */ +String base64::encode(const String& text) +{ + return base64::encode((uint8_t *) text.c_str(), text.length()); +} +