1*cdfa2a7eSchristos /* $NetBSD: binio.h,v 1.6 2020/05/25 20:47:19 christos Exp $ */ 2abb0f93cSkardel 3abb0f93cSkardel /* 4abb0f93cSkardel * /src/NTP/ntp4-dev/include/binio.h,v 4.5 2005/04/16 17:32:10 kardel RELEASE_20050508_A 5abb0f93cSkardel * 6abb0f93cSkardel * binio.h,v 4.5 2005/04/16 17:32:10 kardel RELEASE_20050508_A 7abb0f93cSkardel * 88585484eSchristos * $Created: Sun Jul 20 13:03:05 1997 $ 9abb0f93cSkardel * 10abb0f93cSkardel * Copyright (c) 1997-2005 by Frank Kardel <kardel <AT> ntp.org> 11abb0f93cSkardel * 12abb0f93cSkardel * Redistribution and use in source and binary forms, with or without 13abb0f93cSkardel * modification, are permitted provided that the following conditions 14abb0f93cSkardel * are met: 15abb0f93cSkardel * 1. Redistributions of source code must retain the above copyright 16abb0f93cSkardel * notice, this list of conditions and the following disclaimer. 17abb0f93cSkardel * 2. Redistributions in binary form must reproduce the above copyright 18abb0f93cSkardel * notice, this list of conditions and the following disclaimer in the 19abb0f93cSkardel * documentation and/or other materials provided with the distribution. 20abb0f93cSkardel * 3. Neither the name of the author nor the names of its contributors 21abb0f93cSkardel * may be used to endorse or promote products derived from this software 22abb0f93cSkardel * without specific prior written permission. 23abb0f93cSkardel * 24abb0f93cSkardel * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 25abb0f93cSkardel * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 26abb0f93cSkardel * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 27abb0f93cSkardel * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 28abb0f93cSkardel * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 29abb0f93cSkardel * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 30abb0f93cSkardel * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 31abb0f93cSkardel * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 32abb0f93cSkardel * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 33abb0f93cSkardel * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 34abb0f93cSkardel * SUCH DAMAGE. 35abb0f93cSkardel * 36abb0f93cSkardel */ 37abb0f93cSkardel #ifndef BINIO_H 38abb0f93cSkardel #define BINIO_H 39abb0f93cSkardel 40abb0f93cSkardel #include "ntp_stdlib.h" 41abb0f93cSkardel 42abb0f93cSkardel long get_lsb_short (unsigned char **); 43abb0f93cSkardel void put_lsb_short (unsigned char **, long); 44abb0f93cSkardel long get_lsb_long (unsigned char **); 45abb0f93cSkardel void put_lsb_long (unsigned char **, long); 46abb0f93cSkardel 477476e6e4Schristos #define get_lsb_int16( _x_ ) ((int16_t) get_lsb_short( _x_ )) 487476e6e4Schristos #define get_lsb_uint16( _x_ ) ((uint16_t) get_lsb_short( _x_ )) 497476e6e4Schristos #define get_lsb_int32( _x_ ) ((int32_t) get_lsb_long( _x_ )) 507476e6e4Schristos #define get_lsb_uint32( _x_ ) ((uint32_t) get_lsb_long( _x_ )) 517476e6e4Schristos 52abb0f93cSkardel long get_msb_short (unsigned char **); 53abb0f93cSkardel void put_msb_short (unsigned char **, long); 54abb0f93cSkardel long get_msb_long (unsigned char **); 55abb0f93cSkardel void put_msb_long (unsigned char **, long); 56abb0f93cSkardel 577476e6e4Schristos #define get_msb_int16( _x_ ) ((int16_t) get_msb_short( _x_ )) 587476e6e4Schristos #define get_msb_uint16( _x_ ) ((uint16_t) get_msb_short( _x_ )) 597476e6e4Schristos #define get_msb_int32( _x_ ) ((int32_t) get_msb_long( _x_ )) 607476e6e4Schristos #define get_msb_uint32( _x_ ) ((uint32_t) get_msb_long( _x_ )) 617476e6e4Schristos 62abb0f93cSkardel #endif 63abb0f93cSkardel /* 64abb0f93cSkardel * History: 65abb0f93cSkardel * 66abb0f93cSkardel * binio.h,v 67abb0f93cSkardel * Revision 4.5 2005/04/16 17:32:10 kardel 68abb0f93cSkardel * update copyright 69abb0f93cSkardel * 70abb0f93cSkardel * Revision 4.4 2004/11/14 15:29:41 kardel 71abb0f93cSkardel * support PPSAPI, upgrade Copyright to Berkeley style 72abb0f93cSkardel * 73abb0f93cSkardel * Revision 4.2 1998/06/28 16:52:15 kardel 74abb0f93cSkardel * added binio MSB prototypes for {get,put}_msb_{short,long} 75abb0f93cSkardel * 76abb0f93cSkardel * Revision 4.1 1998/06/12 15:07:40 kardel 77abb0f93cSkardel * fixed prototyping 78abb0f93cSkardel * 79abb0f93cSkardel * Revision 4.0 1998/04/10 19:50:38 kardel 80abb0f93cSkardel * Start 4.0 release version numbering 81abb0f93cSkardel * 82abb0f93cSkardel * Revision 1.1 1998/04/10 19:27:32 kardel 83abb0f93cSkardel * initial NTP VERSION 4 integration of PARSE with GPS166 binary support 84abb0f93cSkardel * 85abb0f93cSkardel * Revision 1.1 1997/10/06 20:55:37 kardel 86abb0f93cSkardel * new parse structure 87abb0f93cSkardel * 88abb0f93cSkardel */ 89