]> andersk Git - openssh.git/blobdiff - getput.h
- (tim) [configure.ac] updwtmpx() on OpenServer seems to add duplicate entry.
[openssh.git] / getput.h
index 5f6b14114a6de7a9091d5e1308c04a662e0e8c9f..20cf8f20b30a03550e46106c7a06c54ef8bdbd0a 100644 (file)
--- a/getput.h
+++ b/getput.h
@@ -1,32 +1,49 @@
+/*     $OpenBSD: getput.h,v 1.8 2002/03/04 17:27:39 stevesk Exp $      */
+
 /*
- *
- * getput.h
- *
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
- *
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
  *                    All rights reserved
- *
- * Created: Wed Jun 28 22:36:30 1995 ylo
- *
  * 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".
  */
 
-/* RCSID("$OpenBSD: getput.h,v 1.4 2000/06/20 01:39:41 markus Exp $"); */
-
 #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; \
   (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 */
This page took 0.056264 seconds and 4 git commands to generate.