upstream: make struct sshbuf private
and remove an unused field; ok dtucker OpenBSD-Commit-ID: c7a3d77c0b8c153d463398606a8d57569186a0c3
This commit is contained in:
parent
5796bf8ca9
commit
3cec155430
27
sshbuf.c
27
sshbuf.c
|
@ -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)
|
||||||
{
|
{
|
||||||
|
|
26
sshbuf.h
26
sshbuf.h
|
@ -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 */
|
||||||
|
|
Loading…
Reference in New Issue