upstream: make struct sshbuf private

and remove an unused field; ok dtucker

OpenBSD-Commit-ID: c7a3d77c0b8c153d463398606a8d57569186a0c3
This commit is contained in:
djm@openbsd.org 2022-12-02 04:40:27 +00:00 committed by Darren Tucker
parent 5796bf8ca9
commit 3cec155430
No known key found for this signature in database
2 changed files with 27 additions and 26 deletions

View File

@ -1,4 +1,4 @@
/* $OpenBSD: sshbuf.c,v 1.18 2022/05/25 06:03:44 djm Exp $ */ /* $OpenBSD: sshbuf.c,v 1.19 2022/12/02 04:40:27 djm Exp $ */
/* /*
* Copyright (c) 2011 Damien Miller * Copyright (c) 2011 Damien Miller
* *
@ -15,7 +15,6 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/ */
#define SSHBUF_INTERNAL
#include "includes.h" #include "includes.h"
#include <sys/types.h> #include <sys/types.h>
@ -25,9 +24,33 @@
#include <string.h> #include <string.h>
#include "ssherr.h" #include "ssherr.h"
#define SSHBUF_INTERNAL
#include "sshbuf.h" #include "sshbuf.h"
#include "misc.h" #include "misc.h"
#ifdef SSHBUF_DEBUG
# define SSHBUF_TELL(what) do { \
printf("%s:%d %s: %s size %zu alloc %zu off %zu max %zu\n", \
__FILE__, __LINE__, __func__, what, \
buf->size, buf->alloc, buf->off, buf->max_size); \
fflush(stdout); \
} while (0)
#else
# define SSHBUF_TELL(what)
#endif
struct sshbuf {
u_char *d; /* Data */
const u_char *cd; /* Const data */
size_t off; /* First available byte is buf->d + buf->off */
size_t size; /* Last byte is buf->d + buf->size - 1 */
size_t max_size; /* Maximum size of buffer */
size_t alloc; /* Total bytes allocated to buf->d */
int readonly; /* Refers to external, const data */
u_int refcount; /* Tracks self and number of child buffers */
struct sshbuf *parent; /* If child, pointer to parent */
};
static inline int static inline int
sshbuf_check_sanity(const struct sshbuf *buf) sshbuf_check_sanity(const struct sshbuf *buf)
{ {

View File

@ -1,4 +1,4 @@
/* $OpenBSD: sshbuf.h,v 1.27 2022/05/25 06:03:44 djm Exp $ */ /* $OpenBSD: sshbuf.h,v 1.28 2022/12/02 04:40:27 djm Exp $ */
/* /*
* Copyright (c) 2011 Damien Miller * Copyright (c) 2011 Damien Miller
* *
@ -33,22 +33,7 @@
#define SSHBUF_MAX_BIGNUM (16384 / 8) /* Max bignum *bytes* */ #define SSHBUF_MAX_BIGNUM (16384 / 8) /* Max bignum *bytes* */
#define SSHBUF_MAX_ECPOINT ((528 * 2 / 8) + 1) /* Max EC point *bytes* */ #define SSHBUF_MAX_ECPOINT ((528 * 2 / 8) + 1) /* Max EC point *bytes* */
/* struct sshbuf;
* NB. do not depend on the internals of this. It will be made opaque
* one day.
*/
struct sshbuf {
u_char *d; /* Data */
const u_char *cd; /* Const data */
size_t off; /* First available byte is buf->d + buf->off */
size_t size; /* Last byte is buf->d + buf->size - 1 */
size_t max_size; /* Maximum size of buffer */
size_t alloc; /* Total bytes allocated to buf->d */
int readonly; /* Refers to external, const data */
int dont_free; /* Kludge to support sshbuf_init */
u_int refcount; /* Tracks self and number of child buffers */
struct sshbuf *parent; /* If child, pointer to parent */
};
/* /*
* Create a new sshbuf buffer. * Create a new sshbuf buffer.
@ -394,12 +379,6 @@ u_int sshbuf_refcount(const struct sshbuf *buf);
# endif # endif
# ifdef SSHBUF_DEBUG # ifdef SSHBUF_DEBUG
# define SSHBUF_TELL(what) do { \
printf("%s:%d %s: %s size %zu alloc %zu off %zu max %zu\n", \
__FILE__, __LINE__, __func__, what, \
buf->size, buf->alloc, buf->off, buf->max_size); \
fflush(stdout); \
} while (0)
# define SSHBUF_DBG(x) do { \ # define SSHBUF_DBG(x) do { \
printf("%s:%d %s: ", __FILE__, __LINE__, __func__); \ printf("%s:%d %s: ", __FILE__, __LINE__, __func__); \
printf x; \ printf x; \
@ -407,7 +386,6 @@ u_int sshbuf_refcount(const struct sshbuf *buf);
fflush(stdout); \ fflush(stdout); \
} while (0) } while (0)
# else # else
# define SSHBUF_TELL(what)
# define SSHBUF_DBG(x) # define SSHBUF_DBG(x)
# endif # endif
#endif /* SSHBUF_INTERNAL */ #endif /* SSHBUF_INTERNAL */