]> andersk Git - openssh.git/blobdiff - getput.h
- (tim) [configure.ac] updwtmpx() on OpenServer seems to add duplicate entry.
[openssh.git] / getput.h
index 38b7d88f8c7004fda2f3ad1ae55e6b4f727812aa..20cf8f20b30a03550e46106c7a06c54ef8bdbd0a 100644 (file)
--- a/getput.h
+++ b/getput.h
@@ -1,32 +1,49 @@
-/*
-
-getput.h
-
-Author: Tatu Ylonen <ylo@cs.hut.fi>
-
-Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
-                   All rights reserved
+/*     $OpenBSD: getput.h,v 1.8 2002/03/04 17:27:39 stevesk Exp $      */
 
-Created: Wed Jun 28 22:36:30 1995 ylo
-
-Macros for storing and retrieving data in msb first and lsb first order.
-
-*/
-
-/* RCSID("$Id$"); */
+/*
+ * Author: Tatu Ylonen <ylo@cs.hut.fi>
+ * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
+ *                    All rights reserved
+ * Macros for storing and retrieving data in msb first and lsb first order.
+ *
+ * As far as I am concerned, the code I have written for this software
+ * can be used freely for any purpose.  Any derived versions of this
+ * software must be clearly marked as such, and if the derived work is
+ * incompatible with the protocol description in the RFC file, it must be
+ * called by a name other than "ssh" or "Secure Shell".
+ */
 
 #ifndef GETPUT_H
 #define GETPUT_H
 
 /*------------ macros for storing/extracting msb first words -------------*/
 
-#define GET_32BIT(cp) (((unsigned long)(unsigned char)(cp)[0] << 24) | \
-                      ((unsigned long)(unsigned char)(cp)[1] << 16) | \
-                      ((unsigned long)(unsigned char)(cp)[2] << 8) | \
-                      ((unsigned long)(unsigned char)(cp)[3]))
-
-#define GET_16BIT(cp) (((unsigned long)(unsigned char)(cp)[0] << 8) | \
-                      ((unsigned long)(unsigned char)(cp)[1]))
+#define GET_64BIT(cp) (((u_int64_t)(u_char)(cp)[0] << 56) | \
+                      ((u_int64_t)(u_char)(cp)[1] << 48) | \
+                      ((u_int64_t)(u_char)(cp)[2] << 40) | \
+                      ((u_int64_t)(u_char)(cp)[3] << 32) | \
+                      ((u_int64_t)(u_char)(cp)[4] << 24) | \
+                      ((u_int64_t)(u_char)(cp)[5] << 16) | \
+                      ((u_int64_t)(u_char)(cp)[6] << 8) | \
+                      ((u_int64_t)(u_char)(cp)[7]))
+
+#define GET_32BIT(cp) (((u_long)(u_char)(cp)[0] << 24) | \
+                      ((u_long)(u_char)(cp)[1] << 16) | \
+                      ((u_long)(u_char)(cp)[2] << 8) | \
+                      ((u_long)(u_char)(cp)[3]))
+
+#define GET_16BIT(cp) (((u_long)(u_char)(cp)[0] << 8) | \
+                      ((u_long)(u_char)(cp)[1]))
+
+#define PUT_64BIT(cp, value) do { \
+  (cp)[0] = (value) >> 56; \
+  (cp)[1] = (value) >> 48; \
+  (cp)[2] = (value) >> 40; \
+  (cp)[3] = (value) >> 32; \
+  (cp)[4] = (value) >> 24; \
+  (cp)[5] = (value) >> 16; \
+  (cp)[6] = (value) >> 8; \
+  (cp)[7] = (value); } while (0)
 
 #define PUT_32BIT(cp, value) do { \
   (cp)[0] = (value) >> 24; \
@@ -38,27 +55,4 @@ Macros for storing and retrieving data in msb first and lsb first order.
   (cp)[0] = (value) >> 8; \
   (cp)[1] = (value); } while (0)
 
-/*------------ macros for storing/extracting lsb first words -------------*/
-
-#define GET_32BIT_LSB_FIRST(cp) \
-  (((unsigned long)(unsigned char)(cp)[0]) | \
-  ((unsigned long)(unsigned char)(cp)[1] << 8) | \
-  ((unsigned long)(unsigned char)(cp)[2] << 16) | \
-  ((unsigned long)(unsigned char)(cp)[3] << 24))
-
-#define GET_16BIT_LSB_FIRST(cp) \
-  (((unsigned long)(unsigned char)(cp)[0]) | \
-  ((unsigned long)(unsigned char)(cp)[1] << 8))
-
-#define PUT_32BIT_LSB_FIRST(cp, value) do { \
-  (cp)[0] = (value); \
-  (cp)[1] = (value) >> 8; \
-  (cp)[2] = (value) >> 16; \
-  (cp)[3] = (value) >> 24; } while (0)
-
-#define PUT_16BIT_LSB_FIRST(cp, value) do { \
-  (cp)[0] = (value); \
-  (cp)[1] = (value) >> 8; } while (0)
-
-#endif /* GETPUT_H */
-
+#endif                         /* GETPUT_H */
This page took 0.033424 seconds and 4 git commands to generate.