1fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravle/* $NetBSD: ns_netint.c,v 1.7 2012/03/13 21:13:39 christos Exp $ */ 21dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 31dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/* 41dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") 51dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Copyright (c) 1996,1999 by Internet Software Consortium. 61dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 71dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Permission to use, copy, modify, and distribute this software for any 81dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * purpose with or without fee is hereby granted, provided that the above 91dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * copyright notice and this permission notice appear in all copies. 101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES 121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 131dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR 141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT 171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 181dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project */ 191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include <sys/cdefs.h> 211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifndef lint 221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifdef notdef 23fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravlestatic const char rcsid[] = "Id: ns_netint.c,v 1.3 2005/04/27 04:56:40 sra Exp"; 241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#else 25fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravle__RCSID("$NetBSD: ns_netint.c,v 1.7 2012/03/13 21:13:39 christos Exp $"); 261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif 271dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif 281dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 291dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/* Import. */ 301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 31569fb9887d00104509df79fa77d92e3cf9afe7dbCalin Juravle#include <arpa/nameser.h> 321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 331dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/* Public. */ 341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 35fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravleuint16_t 361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectns_get16(const u_char *src) { 37fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravle uint16_t dst; 381dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project NS_GET16(dst, src); 40fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravle return dst; 411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project} 421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 43fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravleuint32_t 441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectns_get32(const u_char *src) { 45fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravle u_int32_t dst; 461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project NS_GET32(dst, src); 48fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravle return dst; 491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project} 501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid 52fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravlens_put16(uint16_t src, u_char *dst) { 531dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project NS_PUT16(src, dst); 541dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project} 551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid 57fcb502e3ec032497bba7f8634fb214e0c05394d8Calin Juravlens_put32(uint32_t src, u_char *dst) { 581dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project NS_PUT32(src, dst); 591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project} 60