2 * Misc function definitions for fbfp.
4 * Copyright (C) 2024 Runxi Yu <https://runxiyu.org>
5 * SPDX-License-Identifier: AGPL-3.0-or-later
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Affero General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU Affero General Public License for more details.
17 * You should have received a copy of the GNU Affero General Public License
18 * along with this program. If not, see <https://www.gnu.org/licenses/>.
34 func er
[v_t any
](v v_t
, err error
) v_t
{
42 * Generate a random url-safe string.
43 * Note that the "len" parameter specifies the number of bytes taken from the
44 * random source divided by three and does NOT represent the length of the
47 func random(len int) string {
48 r
:= make([]byte, 3*len)
50 return base64
.RawURLEncoding
.EncodeToString(r
)