delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/04/21/08:17:20

X-Spam-Check-By: sourceware.org
Date: Fri, 21 Apr 2006 14:17:13 +0200
From: Samuel Thibault <samuel DOT thibault AT ens-lyon DOT org>
To: cygwin AT cygwin DOT com
Subject: Re: htonl, htons, ntohl and ntohs types
Message-ID: <20060421121713.GB4189@implementation>
Mail-Followup-To: cygwin AT cygwin DOT com
References: <20060421092508 DOT GA15855 AT tuxedo DOT skovlyporten DOT dk> <20060421100000 DOT GC12661 AT calimero DOT vinschen DOT de> <20060421121151 DOT GA16022 AT tuxedo DOT skovlyporten DOT dk>
Mime-Version: 1.0
In-Reply-To: <20060421121151.GA16022@tuxedo.skovlyporten.dk>
User-Agent: Mutt/1.5.11
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Lars Munch, le Fri 21 Apr 2006 14:11:51 +0200, a écrit :
> On Fri, Apr 21, 2006 at 12:00:00PM +0200, Corinna Vinschen wrote:
> > On Apr 21 11:25, Lars Munch wrote:
> > > Hello
> > > 
> > > I have noticed that the types of the functions htonl, htons, ntohs and
> > > ntohl differs from standard (and linux):
> > > 
> > > http://www.opengroup.org/onlinepubs/000095399/functions/htonl.html
> > > 
> > > Cygwin uses:
> > > 
> > > unsigned long int        ntohl(unsigned long int);
> > > unsigned short int       ntohs(unsigned short int);
> > > unsigned long int        htonl(unsigned long int);
> > > unsigned short int       htons(unsigned short int);
> > > 
> > > The standard (and Linux) has:
> > > 
> > > uint32_t htonl(uint32_t hostlong);
> > > uint16_t htons(uint16_t hostshort);
> > > uint32_t ntohl(uint32_t netlong);
> > > uint16_t ntohs(uint16_t netshort);
> > > 
> > > Is there any reason for this difference?
> > 
> > Nobody had a problem so far?
> > 
> > Fixed in CVS.
> 
> Wow, that was fast. Thanks!
> 
> My code still gives me warnings due to a problem with stdint.h.
> 
> The Xint32_t typedef's uses long instead of int:

That's on purpose: on windows, ints are 16bits.

If you need something like printing uint32_t-s, use "%"PRIx32 for instance.

Regards,
Samuel

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019