summaryrefslogtreecommitdiff
path: root/bufaux.c
diff options
context:
space:
mode:
Diffstat (limited to 'bufaux.c')
-rw-r--r--bufaux.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/bufaux.c b/bufaux.c
index 9fe6da513..79f8bbd49 100644
--- a/bufaux.c
+++ b/bufaux.c
@@ -37,7 +37,7 @@
37 */ 37 */
38 38
39#include "includes.h" 39#include "includes.h"
40RCSID("$OpenBSD: bufaux.c,v 1.24 2002/03/26 15:23:40 markus Exp $"); 40RCSID("$OpenBSD: bufaux.c,v 1.25 2002/04/20 09:14:58 markus Exp $");
41 41
42#include <openssl/bn.h> 42#include <openssl/bn.h>
43#include "bufaux.h" 43#include "bufaux.h"
@@ -137,10 +137,18 @@ buffer_get_bignum2(Buffer *buffer, BIGNUM *value)
137 BN_bin2bn(bin, len, value); 137 BN_bin2bn(bin, len, value);
138 xfree(bin); 138 xfree(bin);
139} 139}
140
141/* 140/*
142 * Returns an integer from the buffer (4 bytes, msb first). 141 * Returns integers from the buffer (msb first).
143 */ 142 */
143
144u_short
145buffer_get_short(Buffer *buffer)
146{
147 u_char buf[2];
148 buffer_get(buffer, (char *) buf, 2);
149 return GET_16BIT(buf);
150}
151
144u_int 152u_int
145buffer_get_int(Buffer *buffer) 153buffer_get_int(Buffer *buffer)
146{ 154{
@@ -160,9 +168,17 @@ buffer_get_int64(Buffer *buffer)
160#endif 168#endif
161 169
162/* 170/*
163 * Stores an integer in the buffer in 4 bytes, msb first. 171 * Stores integers in the buffer, msb first.
164 */ 172 */
165void 173void
174buffer_put_short(Buffer *buffer, u_short value)
175{
176 char buf[2];
177 PUT_16BIT(buf, value);
178 buffer_append(buffer, buf, 2);
179}
180
181void
166buffer_put_int(Buffer *buffer, u_int value) 182buffer_put_int(Buffer *buffer, u_int value)
167{ 183{
168 char buf[4]; 184 char buf[4];