|
|
| version 1.2, 2025/03/09 15:20:18 | version 1.4, 2025/03/22 18:43:54 |
|---|---|
| Line 1 | Line 1 |
| /* | /* |
| * * | * $Id$ |
| * * * | |
| * * * | |
| * *************** | |
| * * * * * | |
| * * MUMPS * | |
| * * * * * | |
| * *************** | |
| * * * | |
| * * * | |
| * * | |
| * | |
| * freem.h | |
| * libfreem data structures and prototypes | * libfreem data structures and prototypes |
| * | * |
| * NOTE: Caller must pre-allocate memory for *all* APIs! | * NOTE: Caller must pre-allocate memory for *all* APIs! |
| Line 19 | Line 7 |
| * | * |
| * Author: Serena Willis <snw@coherent-logic.com> | * Author: Serena Willis <snw@coherent-logic.com> |
| * Copyright (C) 1998 MUG Deutschland | * Copyright (C) 1998 MUG Deutschland |
| * Copyright (C) 2020 Coherent Logic Development LLC | * Copyright (C) 2020, 2025 Coherent Logic Development LLC |
| * | * |
| * | * |
| * This file is part of FreeM. | * This file is part of FreeM. |
| Line 37 | Line 25 |
| * You should have received a copy of the GNU Affero Public License | * You should have received a copy of the GNU Affero Public License |
| * along with FreeM. If not, see <https://www.gnu.org/licenses/>. | * along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
| * | * |
| * $Log$ | |
| * Revision 1.4 2025/03/22 18:43:54 snw | |
| * Make STRLEN 255 chars and add BIGSTR macro for larger buffers | |
| * | |
| * Revision 1.3 2025/03/09 19:14:25 snw | |
| * First phase of REUSE compliance and header reformat | |
| * | |
| * | |
| * SPDX-FileCopyrightText: (C) 2025 Coherent Logic Development LLC | |
| * SPDX-License-Identifier: AGPL-3.0-or-later | |
| **/ | **/ |
| #ifndef _LIBFREEM_H | #ifndef _LIBFREEM_H |
| Line 46 | Line 44 |
| #include <sys/types.h> | #include <sys/types.h> |
| #if !defined(STRLEN) | #if !defined(STRLEN) |
| # define STRLEN 65535 | # define STRLEN 255 |
| #endif | |
| #if !defined(BIGSTR) | |
| # define BIGSTR 65535 | |
| #endif | #endif |
| #define MREF_RT_LOCAL 0 | #define MREF_RT_LOCAL 0 |
| Line 75 typedef struct freem_ref_t { | Line 77 typedef struct freem_ref_t { |
| * The 'name' field is the name of the local variable, | * The 'name' field is the name of the local variable, |
| * global variable, or SSV. | * global variable, or SSV. |
| */ | */ |
| char name[256]; | char name[STRLEN]; |
| /* | /* |
| * Returned data goes in a string, so it is important to make sure | * Returned data goes in a string, so it is important to make sure |
| Line 86 typedef struct freem_ref_t { | Line 88 typedef struct freem_ref_t { |
| short status; | short status; |
| unsigned int subscript_count; | unsigned int subscript_count; |
| char subscripts[255][256]; | char subscripts[255][STRLEN]; |
| } freem_ref_t; | } freem_ref_t; |