* 'main' of https://github.com/vitorpamplona/amethyst:
  New Crowdin translations by GitHub Action
  Get rid of libsodium related files.
This commit is contained in:
Vitor Pamplona
2026-03-27 15:29:10 -04:00
13 changed files with 75 additions and 613 deletions
@@ -387,6 +387,9 @@
<string name="add_to_public_bookmarks">Hozzáadás a nyilvános könyvjelzőkhöz</string>
<string name="remove_from_private_bookmarks">Törlés a privát könyvjelzőkből</string>
<string name="remove_from_public_bookmarks">Törlés a nyilvános könyvjelzőkből</string>
<string name="pinned_notes">Rögzített bejegyzések</string>
<string name="pin_to_profile">Rögzítés a profilhoz</string>
<string name="unpin_from_profile">Rögzítés megszüntetése a profiltól</string>
<string name="bookmark_lists">Könyvjelzőlisták</string>
<string name="bookmark_list_icon_label">Könyvjelzőlista ikonja</string>
<string name="bookmark_list_creation_screen_title">Új könyvjelzőlista</string>
@@ -1720,5 +1723,77 @@
<string name="web_bookmark_delete">Törlés</string>
<string name="web_bookmark_delete_confirm">Törli ezt a webes könyvjelzőt?</string>
<string name="web_bookmark_open_url">Webcím megnyitása</string>
<string name="request_to_vanish">Törlési kérés</string>
<string name="request_to_vanish_description">Kérés az átjátszóknak, hogy a kiválasztott dátumig visszamenőleg véglegesen töröljék az Ön összes adatát. Ez a művelet a NIP-62 szabványon alapul, és egyes joghatóságokban jogilag kötelező érvényű.</string>
<string name="vanish_select_relay">Egy átjátszó kiválasztása</string>
<string name="vanish_all_relays">Összes átjátszó</string>
<string name="vanish_all_relays_warning">Ezzel az összes átjátszót arra kéri, hogy a kiválasztott dátumig töröljön mindent, ami az Ön kulcsához kapcsolódik. Ezt az eseményt a lehető legszélesebb körben közzétesszük. Ez a művelet nem vonható vissza.</string>
<string name="vanish_date_label">Adatok törlése eddig:</string>
<string name="vanish_date_explainer">Az ezen időpont előtt létrehozott összes esemény törlését kérelmezi a kiválasztott átjátszótól.</string>
<string name="vanish_reason_label">Indoklás (nem kötelező)</string>
<string name="vanish_reason_placeholder">Indoklás vagy jogi nyilatkozat az átjátszó üzemeltetőjének</string>
<string name="vanish_send_request">Törlési kérés küldése</string>
<string name="vanish_confirm_title">Törlési kérés megerősítése</string>
<string name="vanish_confirm_single_relay">Ön arra kéri a(z) %1$s átjátszót, hogy a kiválasztott dátum előtt létrehozott összes adatát végleges törölje. Ez a művelet nem vonható vissza.</string>
<string name="vanish_confirm_all_relays">Ön arra kéri az ÖSSZES átjátszót, hogy a kiválasztott dátum előtt létrehozott összes adatát végleges törölje. Ez a művelet közvetítve lesz mindenhová és nem vonható vissza.</string>
<string name="vanish_request_sent">Törlési kérés elküldve</string>
<string name="vanish_select_date">Dátum kiválasztása</string>
<string name="vanish_select_time">Idő kiválasztása</string>
<string name="vanish_events_title">Törlési előzmények</string>
<string name="vanish_events_refresh">Frissítés</string>
<string name="vanish_events_description">Ezek az Ön korábbi, a kapcsolódott átjátszókon talált törlési kérései. Az ezekben az eseményekben megjelölt átjátszók nem tárolhatják az Ön adatait az esemény dátuma előtti időszakból.</string>
<string name="vanish_events_empty">Nem találhatók törlési kérések</string>
<string name="vanish_events_empty_hint">Ön még nem küldött törlési kérést.</string>
<string name="vanish_target_relays_label">Célátjátszók</string>
<string name="vanish_all_relays_compliance_hint">Ez a kérés érinti az összes átjátszót. Használja a törlési kérés menüjét az egyes átjátszók megfelelőségének teszteléséhez.</string>
<string name="vanish_test_button">Tesztelés</string>
<string name="vanish_compliant">Megfelelő</string>
<string name="vanish_non_compliant">Nem megfelelő</string>
<string name="vanish_test_error">Hiba</string>
<string name="vanish_history">Törlési előzmények</string>
<!-- NIP-86 Relay Management -->
<string name="relay_management_title">%1$s kezelése</string>
<string name="relay_management_loading">Átjátszókezelési funkciók betöltése…</string>
<string name="relay_management_error">Nem sikerült kapcsolódni az átjátszókezeléshez</string>
<string name="relay_management_no_methods">Nem érhető el kezelési eljárás</string>
<string name="relay_management_dismiss">Elvetés</string>
<string name="relay_management_tab_pubkeys">Felhasználók</string>
<string name="relay_management_tab_events">Események</string>
<string name="relay_management_tab_kinds">Típusok</string>
<string name="relay_management_tab_ips">IP-címek</string>
<string name="relay_management_tab_settings">Beállítások</string>
<string name="relay_management_banned_pubkeys">Letiltott felhasználók</string>
<string name="relay_management_no_banned_pubkeys">Nincsenek letiltott felhasználók</string>
<string name="relay_management_allowed_pubkeys">Engedélyezett felhasználók</string>
<string name="relay_management_no_allowed_pubkeys">Nincsenek engedélyezett felhasználók</string>
<string name="relay_management_moderation_queue">Moderációs várólista</string>
<string name="relay_management_no_moderation_events">Nincsenek moderálandó események</string>
<string name="relay_management_banned_events">Letiltott események</string>
<string name="relay_management_no_banned_events">Nincsenek letiltott események</string>
<string name="relay_management_allowed_kinds">Engedélyezett típusok</string>
<string name="relay_management_no_allowed_kinds">Nincsenek engedélyezett típusok</string>
<string name="relay_management_blocked_ips">Letiltott IP-címek</string>
<string name="relay_management_no_blocked_ips">Nincsenek letiltott IP-címek</string>
<string name="relay_management_add">Hozzáadás</string>
<string name="relay_management_remove">Eltávolítás</string>
<string name="relay_management_allow">Engedélyezés</string>
<string name="relay_management_ban">Letiltás</string>
<string name="relay_management_ban_pubkey">Nyilvános kulcs letiltása</string>
<string name="relay_management_allow_pubkey">Nyilvános kulcs engedélyezése</string>
<string name="relay_management_ban_event">Esemény letiltása</string>
<string name="relay_management_allow_kind">Típus engedélyezése</string>
<string name="relay_management_block_ip">IP-cím letiltása</string>
<string name="relay_management_pubkey_hex">Nyilvános kulcs (hex)</string>
<string name="relay_management_event_id_hex">Eseményazonosító (hex)</string>
<string name="relay_management_kind_number">Típus száma</string>
<string name="relay_management_ip_address">IP-cím</string>
<string name="relay_management_reason_optional">Indoklás (nem kötelező)</string>
<string name="relay_management_confirm">Megerősítés</string>
<string name="relay_management_cancel">Mégse</string>
<string name="relay_management_apply">Alkamaz</string>
<string name="relay_management_relay_name">Átjátszó neve</string>
<string name="relay_management_relay_description">Átjátszó leírása</string>
<string name="relay_management_relay_icon_url">Átjátszó ikonjának webcíme</string>
<string name="relay_management_button">Átjátszó kezelése</string>
<string name="manage">Kezelés</string>
</resources>
@@ -1,18 +0,0 @@
/*
* ISC License
*
* Copyright (c) 2013-2026
* Frank Denis <j at pureftpd dot org>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
@@ -1,4 +0,0 @@
module Clibsodium {
header "sodium.h"
export *
}
@@ -1,27 +0,0 @@
#ifndef sodium_H
#define sodium_H
#include "sodium/version.h"
#include "sodium/core.h"
#include "sodium/crypto_aead_xchacha20poly1305.h"
#include "sodium/crypto_core_hchacha20.h"
#include "sodium/crypto_stream_chacha20.h"
#include "sodium/runtime.h"
#include "sodium/utils.h"
#ifndef SODIUM_LIBRARY_MINIMAL
#include "sodium/crypto_box_curve25519xchacha20poly1305.h"
#include "sodium/crypto_core_ed25519.h"
#include "sodium/crypto_core_ristretto255.h"
#include "sodium/crypto_pwhash_scryptsalsa208sha256.h"
#include "sodium/crypto_scalarmult_ed25519.h"
#include "sodium/crypto_scalarmult_ristretto255.h"
#include "sodium/crypto_secretbox_xchacha20poly1305.h"
#include "sodium/crypto_stream_salsa2012.h"
#include "sodium/crypto_stream_salsa208.h"
#include "sodium/crypto_stream_xchacha20.h"
#endif
#endif
@@ -1,100 +0,0 @@
#ifndef crypto_aead_xchacha20poly1305_H
#define crypto_aead_xchacha20poly1305_H
#include <stddef.h>
#include "export.h"
#ifdef __cplusplus
# ifdef __GNUC__
# pragma GCC diagnostic ignored "-Wlong-long"
# endif
extern "C" {
#endif
#define crypto_aead_xchacha20poly1305_ietf_KEYBYTES 32U
SODIUM_EXPORT
size_t crypto_aead_xchacha20poly1305_ietf_keybytes(void);
#define crypto_aead_xchacha20poly1305_ietf_NSECBYTES 0U
SODIUM_EXPORT
size_t crypto_aead_xchacha20poly1305_ietf_nsecbytes(void);
#define crypto_aead_xchacha20poly1305_ietf_NPUBBYTES 24U
SODIUM_EXPORT
size_t crypto_aead_xchacha20poly1305_ietf_npubbytes(void);
#define crypto_aead_xchacha20poly1305_ietf_ABYTES 16U
SODIUM_EXPORT
size_t crypto_aead_xchacha20poly1305_ietf_abytes(void);
#define crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX \
(SODIUM_SIZE_MAX - crypto_aead_xchacha20poly1305_ietf_ABYTES)
SODIUM_EXPORT
size_t crypto_aead_xchacha20poly1305_ietf_messagebytes_max(void);
SODIUM_EXPORT
int crypto_aead_xchacha20poly1305_ietf_encrypt(unsigned char *c,
unsigned long long *clen_p,
const unsigned char *m,
unsigned long long mlen,
const unsigned char *ad,
unsigned long long adlen,
const unsigned char *nsec,
const unsigned char *npub,
const unsigned char *k)
__attribute__ ((nonnull(1, 8, 9)));
SODIUM_EXPORT
int crypto_aead_xchacha20poly1305_ietf_decrypt(unsigned char *m,
unsigned long long *mlen_p,
unsigned char *nsec,
const unsigned char *c,
unsigned long long clen,
const unsigned char *ad,
unsigned long long adlen,
const unsigned char *npub,
const unsigned char *k)
__attribute__ ((warn_unused_result)) __attribute__ ((nonnull(4, 8, 9)));
SODIUM_EXPORT
int crypto_aead_xchacha20poly1305_ietf_encrypt_detached(unsigned char *c,
unsigned char *mac,
unsigned long long *maclen_p,
const unsigned char *m,
unsigned long long mlen,
const unsigned char *ad,
unsigned long long adlen,
const unsigned char *nsec,
const unsigned char *npub,
const unsigned char *k)
__attribute__ ((nonnull(1, 2, 9, 10)));
SODIUM_EXPORT
int crypto_aead_xchacha20poly1305_ietf_decrypt_detached(unsigned char *m,
unsigned char *nsec,
const unsigned char *c,
unsigned long long clen,
const unsigned char *mac,
const unsigned char *ad,
unsigned long long adlen,
const unsigned char *npub,
const unsigned char *k)
__attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5, 8, 9)));
SODIUM_EXPORT
void crypto_aead_xchacha20poly1305_ietf_keygen(unsigned char k[crypto_aead_xchacha20poly1305_ietf_KEYBYTES])
__attribute__ ((nonnull));
/* Aliases */
#define crypto_aead_xchacha20poly1305_IETF_KEYBYTES crypto_aead_xchacha20poly1305_ietf_KEYBYTES
#define crypto_aead_xchacha20poly1305_IETF_NSECBYTES crypto_aead_xchacha20poly1305_ietf_NSECBYTES
#define crypto_aead_xchacha20poly1305_IETF_NPUBBYTES crypto_aead_xchacha20poly1305_ietf_NPUBBYTES
#define crypto_aead_xchacha20poly1305_IETF_ABYTES crypto_aead_xchacha20poly1305_ietf_ABYTES
#define crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX
#ifdef __cplusplus
}
#endif
#endif
@@ -1,36 +0,0 @@
#ifndef crypto_core_hchacha20_H
#define crypto_core_hchacha20_H
#include <stddef.h>
#include "export.h"
#ifdef __cplusplus
extern "C" {
#endif
#define crypto_core_hchacha20_OUTPUTBYTES 32U
SODIUM_EXPORT
size_t crypto_core_hchacha20_outputbytes(void);
#define crypto_core_hchacha20_INPUTBYTES 16U
SODIUM_EXPORT
size_t crypto_core_hchacha20_inputbytes(void);
#define crypto_core_hchacha20_KEYBYTES 32U
SODIUM_EXPORT
size_t crypto_core_hchacha20_keybytes(void);
#define crypto_core_hchacha20_CONSTBYTES 16U
SODIUM_EXPORT
size_t crypto_core_hchacha20_constbytes(void);
SODIUM_EXPORT
int crypto_core_hchacha20(unsigned char *out, const unsigned char *in,
const unsigned char *k, const unsigned char *c)
__attribute__ ((nonnull(1, 2, 3)));
#ifdef __cplusplus
}
#endif
#endif
@@ -1,106 +0,0 @@
#ifndef crypto_stream_chacha20_H
#define crypto_stream_chacha20_H
/*
* WARNING: This is just a stream cipher. It is NOT authenticated encryption.
* While it provides some protection against eavesdropping, it does NOT
* provide any security against active attacks.
* Unless you know what you're doing, what you are looking for is probably
* the crypto_box functions.
*/
#include <stddef.h>
#include <stdint.h>
#include "export.h"
#ifdef __cplusplus
# ifdef __GNUC__
# pragma GCC diagnostic ignored "-Wlong-long"
# endif
extern "C" {
#endif
#define crypto_stream_chacha20_KEYBYTES 32U
SODIUM_EXPORT
size_t crypto_stream_chacha20_keybytes(void);
#define crypto_stream_chacha20_NONCEBYTES 8U
SODIUM_EXPORT
size_t crypto_stream_chacha20_noncebytes(void);
#define crypto_stream_chacha20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX
SODIUM_EXPORT
size_t crypto_stream_chacha20_messagebytes_max(void);
/* ChaCha20 with a 64-bit nonce and a 64-bit counter, as originally designed */
SODIUM_EXPORT
int crypto_stream_chacha20(unsigned char *c, unsigned long long clen,
const unsigned char *n, const unsigned char *k)
__attribute__ ((nonnull));
SODIUM_EXPORT
int crypto_stream_chacha20_xor(unsigned char *c, const unsigned char *m,
unsigned long long mlen, const unsigned char *n,
const unsigned char *k)
__attribute__ ((nonnull(1, 4, 5)));
SODIUM_EXPORT
int crypto_stream_chacha20_xor_ic(unsigned char *c, const unsigned char *m,
unsigned long long mlen,
const unsigned char *n, uint64_t ic,
const unsigned char *k)
__attribute__ ((nonnull(1, 4, 6)));
SODIUM_EXPORT
void crypto_stream_chacha20_keygen(unsigned char k[crypto_stream_chacha20_KEYBYTES])
__attribute__ ((nonnull));
/* ChaCha20 with a 96-bit nonce and a 32-bit counter (IETF) */
#define crypto_stream_chacha20_ietf_KEYBYTES 32U
SODIUM_EXPORT
size_t crypto_stream_chacha20_ietf_keybytes(void);
#define crypto_stream_chacha20_ietf_NONCEBYTES 12U
SODIUM_EXPORT
size_t crypto_stream_chacha20_ietf_noncebytes(void);
#define crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX \
SODIUM_MIN(SODIUM_SIZE_MAX, 64ULL * (1ULL << 32))
SODIUM_EXPORT
size_t crypto_stream_chacha20_ietf_messagebytes_max(void);
SODIUM_EXPORT
int crypto_stream_chacha20_ietf(unsigned char *c, unsigned long long clen,
const unsigned char *n, const unsigned char *k)
__attribute__ ((nonnull));
SODIUM_EXPORT
int crypto_stream_chacha20_ietf_xor(unsigned char *c, const unsigned char *m,
unsigned long long mlen, const unsigned char *n,
const unsigned char *k)
__attribute__ ((nonnull(1, 4, 5)));
SODIUM_EXPORT
int crypto_stream_chacha20_ietf_xor_ic(unsigned char *c, const unsigned char *m,
unsigned long long mlen,
const unsigned char *n, uint32_t ic,
const unsigned char *k)
__attribute__ ((nonnull(1, 4, 6)));
SODIUM_EXPORT
void crypto_stream_chacha20_ietf_keygen(unsigned char k[crypto_stream_chacha20_ietf_KEYBYTES])
__attribute__ ((nonnull));
/* Aliases */
#define crypto_stream_chacha20_IETF_KEYBYTES crypto_stream_chacha20_ietf_KEYBYTES
#define crypto_stream_chacha20_IETF_NONCEBYTES crypto_stream_chacha20_ietf_NONCEBYTES
#define crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX
#ifdef __cplusplus
}
#endif
#endif
@@ -1,57 +0,0 @@
#ifndef sodium_export_H
#define sodium_export_H
#include <stddef.h>
#include <stdint.h>
#include <limits.h>
#if !defined(__clang__) && !defined(__GNUC__)
# ifdef __attribute__
# undef __attribute__
# endif
# define __attribute__(a)
#endif
#ifdef SODIUM_STATIC
# define SODIUM_EXPORT
# define SODIUM_EXPORT_WEAK
#else
# if defined(_MSC_VER)
# ifdef SODIUM_DLL_EXPORT
# define SODIUM_EXPORT __declspec(dllexport)
# else
# define SODIUM_EXPORT __declspec(dllimport)
# endif
# else
# if defined(__SUNPRO_C)
# ifndef __GNU_C__
# define SODIUM_EXPORT __attribute__ (visibility(__global))
# else
# define SODIUM_EXPORT __attribute__ __global
# endif
# elif defined(_MSG_VER)
# define SODIUM_EXPORT extern __declspec(dllexport)
# else
# define SODIUM_EXPORT __attribute__ ((visibility ("default")))
# endif
# endif
# if defined(__ELF__) && !defined(SODIUM_DISABLE_WEAK_FUNCTIONS)
# define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak))
# else
# define SODIUM_EXPORT_WEAK SODIUM_EXPORT
# endif
#endif
#ifndef CRYPTO_ALIGN
# if defined(__INTEL_COMPILER) || defined(_MSC_VER)
# define CRYPTO_ALIGN(x) __declspec(align(x))
# else
# define CRYPTO_ALIGN(x) __attribute__ ((aligned(x)))
# endif
#endif
#define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B))
#define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX)
#endif
@@ -1,55 +0,0 @@
#ifndef sodium_runtime_H
#define sodium_runtime_H
#include "export.h"
#ifdef __cplusplus
extern "C" {
#endif
SODIUM_EXPORT_WEAK
int sodium_runtime_has_neon(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_armcrypto(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_sse2(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_sse3(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_ssse3(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_sse41(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_avx(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_avx2(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_avx512f(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_pclmul(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_aesni(void);
SODIUM_EXPORT_WEAK
int sodium_runtime_has_rdrand(void);
/* ------------------------------------------------------------------------- */
int _sodium_runtime_get_cpu_features(void);
#ifdef __cplusplus
}
#endif
#endif
@@ -1,177 +0,0 @@
#ifndef sodium_utils_H
#define sodium_utils_H
#include <stddef.h>
#include "export.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifndef SODIUM_C99
# if defined(__cplusplus) || !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L
# define SODIUM_C99(X)
# else
# define SODIUM_C99(X) X
# endif
#endif
SODIUM_EXPORT
void sodium_memzero(void *const pnt, const size_t len);
SODIUM_EXPORT
void sodium_stackzero(const size_t len);
/*
* WARNING: sodium_memcmp() must be used to verify if two secret keys
* are equal, in constant time.
* It returns 0 if the keys are equal, and -1 if they differ.
* This function is not designed for lexicographical comparisons.
*/
SODIUM_EXPORT
int sodium_memcmp(const void *const b1_, const void *const b2_, size_t len)
__attribute__((warn_unused_result));
/*
* sodium_compare() returns -1 if b1_ < b2_, 1 if b1_ > b2_ and 0 if b1_ == b2_
* It is suitable for lexicographical comparisons, or to compare nonces
* and counters stored in little-endian format.
* However, it is slower than sodium_memcmp().
*/
SODIUM_EXPORT
int sodium_compare(const unsigned char *b1_, const unsigned char *b2_, size_t len)
__attribute__((warn_unused_result));
SODIUM_EXPORT
int sodium_is_zero(const unsigned char *n, const size_t nlen);
SODIUM_EXPORT
void sodium_increment(unsigned char *n, const size_t nlen);
SODIUM_EXPORT
void sodium_add(unsigned char *a, const unsigned char *b, const size_t len);
SODIUM_EXPORT
void sodium_sub(unsigned char *a, const unsigned char *b, const size_t len);
SODIUM_EXPORT
char *sodium_bin2hex(char *const hex, const size_t hex_maxlen, const unsigned char *const bin,
const size_t bin_len) __attribute__((nonnull(1)));
SODIUM_EXPORT
int sodium_hex2bin(unsigned char *const bin, const size_t bin_maxlen, const char *const hex,
const size_t hex_len, const char *const ignore, size_t *const bin_len,
const char **const hex_end) __attribute__((nonnull(1)));
#define sodium_base64_VARIANT_ORIGINAL 1
#define sodium_base64_VARIANT_ORIGINAL_NO_PADDING 3
#define sodium_base64_VARIANT_URLSAFE 5
#define sodium_base64_VARIANT_URLSAFE_NO_PADDING 7
/*
* Computes the required length to encode BIN_LEN bytes as a base64 string
* using the given variant. The computed length includes a trailing \0.
*/
#define sodium_base64_ENCODED_LEN(BIN_LEN, VARIANT) \
(((BIN_LEN) / 3U) * 4U + \
((((BIN_LEN) - ((BIN_LEN) / 3U) * 3U) | (((BIN_LEN) - ((BIN_LEN) / 3U) * 3U) >> 1)) & 1U) * \
(4U - (~((((VARIANT) & 2U) >> 1) - 1U) & (3U - ((BIN_LEN) - ((BIN_LEN) / 3U) * 3U)))) + \
1U)
SODIUM_EXPORT
size_t sodium_base64_encoded_len(const size_t bin_len, const int variant);
SODIUM_EXPORT
char *sodium_bin2base64(char *const b64, const size_t b64_maxlen, const unsigned char *const bin,
const size_t bin_len, const int variant) __attribute__((nonnull(1)));
SODIUM_EXPORT
int sodium_base642bin(unsigned char *const bin, const size_t bin_maxlen, const char *const b64,
const size_t b64_len, const char *const ignore, size_t *const bin_len,
const char **const b64_end, const int variant) __attribute__((nonnull(1)));
SODIUM_EXPORT
int sodium_ip2bin(unsigned char bin[16], const char *ip, size_t ip_len)
__attribute__((warn_unused_result)) __attribute__((nonnull));
SODIUM_EXPORT
char *sodium_bin2ip(char *ip, size_t ip_maxlen, const unsigned char bin[16])
__attribute__((nonnull));
SODIUM_EXPORT
int sodium_mlock(void *const addr, const size_t len) __attribute__((nonnull));
SODIUM_EXPORT
int sodium_munlock(void *const addr, const size_t len) __attribute__((nonnull));
/* WARNING: sodium_malloc() and sodium_allocarray() are not general-purpose
* allocation functions.
*
* They return a pointer to a region filled with 0xd0 bytes, immediately
* followed by a guard page. As a result, accessing a single byte after the
* requested allocation size will intentionally trigger a segmentation fault.
*
* A canary and an additional guard page placed before the beginning of the
* region may also kill the process if a buffer underflow is detected.
*
* The memory layout is:
* [unprotected region size (read only)][guard page (no access)][unprotected pages
* (read/write)][guard page (no access)]
*
* The layout of the unprotected pages is:
* [optional padding][16-bytes canary][user region]
*
* Important limitations:
* - These functions are significantly slower than standard allocation functions.
* - Each allocation requires 3 or 4 additional pages.
* - The returned address will not be aligned if the allocation size is not
* a multiple of the required alignment. For this reason, these functions
* are designed to store data such as secret keys and messages.
*
* sodium_malloc() can be used to allocate any libsodium data structure.
*
* The crypto_generichash_state structure is packed and its length is
* either 357 or 361 bytes. When using sodium_malloc() to allocate a
* crypto_generichash_state structure, padding must be added to ensure
* proper alignment. Use crypto_generichash_statebytes() rather than sizeof():
*
* state = sodium_malloc(crypto_generichash_statebytes());
*/
SODIUM_EXPORT
void *sodium_malloc(const size_t size) __attribute__((malloc));
SODIUM_EXPORT
void *sodium_allocarray(size_t count, size_t size) __attribute__((malloc));
SODIUM_EXPORT
void sodium_free(void *ptr);
SODIUM_EXPORT
int sodium_mprotect_noaccess(void *ptr) __attribute__((nonnull));
SODIUM_EXPORT
int sodium_mprotect_readonly(void *ptr) __attribute__((nonnull));
SODIUM_EXPORT
int sodium_mprotect_readwrite(void *ptr) __attribute__((nonnull));
SODIUM_EXPORT
int sodium_pad(size_t *padded_buflen_p, unsigned char *buf, size_t unpadded_buflen,
size_t blocksize, size_t max_buflen) __attribute__((nonnull(2)));
SODIUM_EXPORT
int sodium_unpad(size_t *unpadded_buflen_p, const unsigned char *buf, size_t padded_buflen,
size_t blocksize) __attribute__((nonnull(2)));
/* -------- */
int _sodium_alloc_init(void);
#ifdef __cplusplus
}
#endif
#endif
@@ -1,33 +0,0 @@
#ifndef sodium_version_H
#define sodium_version_H
#include "export.h"
#define SODIUM_VERSION_STRING "1.0.21"
#define SODIUM_LIBRARY_VERSION_MAJOR 26
#define SODIUM_LIBRARY_VERSION_MINOR 3
#ifdef __cplusplus
extern "C" {
#endif
SODIUM_EXPORT
const char *sodium_version_string(void);
SODIUM_EXPORT
int sodium_library_version_major(void);
SODIUM_EXPORT
int sodium_library_version_minor(void);
SODIUM_EXPORT
int sodium_library_minimal(void);
#ifdef __cplusplus
}
#endif
#endif