diff options
| author | Sam Varshavchik | 2013-08-19 16:39:41 -0400 | 
|---|---|---|
| committer | Sam Varshavchik | 2013-08-25 14:43:51 -0400 | 
| commit | 9c45d9ad13fdf439d44d7443ae75da15ea0223ed (patch) | |
| tree | 7a81a04cb51efb078ee350859a64be2ebc6b8813 /rfc1035/rfc1035gettxt.c | |
| parent | a9520698b770168d1f33d6301463bb70a19655ec (diff) | |
| download | courier-libs-9c45d9ad13fdf439d44d7443ae75da15ea0223ed.tar.bz2 | |
Initial checkin
Imported from subversion report, converted to git. Updated all paths in
scripts and makefiles, reflecting the new directory hierarchy.
Diffstat (limited to 'rfc1035/rfc1035gettxt.c')
| -rw-r--r-- | rfc1035/rfc1035gettxt.c | 30 | 
1 files changed, 30 insertions, 0 deletions
| diff --git a/rfc1035/rfc1035gettxt.c b/rfc1035/rfc1035gettxt.c new file mode 100644 index 0000000..4af5506 --- /dev/null +++ b/rfc1035/rfc1035gettxt.c @@ -0,0 +1,30 @@ +/* +** Copyright 1998 - 2000 Double Precision, Inc. +** See COPYING for distribution information. +*/ + +#include	"rfc1035.h" +#include	<string.h> + + +int rfc1035_rr_gettxt(struct rfc1035_rr *p, int startpos, char buf[256]) +{ +unsigned l; + +	if (startpos < 0 || (unsigned)startpos >= p->rdlength || +		p->rdlength - (unsigned)startpos <= +			(l=(unsigned)(unsigned char)p->rdata[startpos])) +	{ +		buf[0]=0; +		return (-1); +	} + +	++startpos; + +	memcpy(buf, p->rdata + startpos, l); +	buf[l]=0; +	startpos += l; +	if (startpos >= p->rdlength) +		startpos= -1; +	return (startpos); +} | 
