[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#228471: marked as done (ITP: libvstr1 -- A fast and secure string/buffer library for C)



Your message dated Wed, 14 Sep 2005 13:02:23 -0500 (CDT)
with message-id <20050914180223.38C4D1078AB@cerdita.damog.net>
and subject line WNPP bug closed
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--------------------------------------
Received: (at submit) by bugs.debian.org; 19 Jan 2004 07:12:26 +0000
>From mbp@sourcefrog.net Sun Jan 18 23:12:26 2004
Return-path: <mbp@sourcefrog.net>
Received: from mailhost.netspeed.com.au [203.31.48.33] 
	by spohr.debian.org with esmtp (Exim 3.35 1 (Debian))
	id 1AiTaE-0006TY-00; Sun, 18 Jan 2004 23:12:26 -0800
Received: from wistful (unverified [210.9.138.220]) 
	by netspeed.com.au (SurgeMail 1.6b) with ESMTP id 14156412 
	for multiple; Mon, 19 Jan 2004 18:14:41 +1100
Received: by wistful (Postfix, from userid 500)
	id F2BAB5AE5; Mon, 19 Jan 2004 18:12:10 +1100 (EST)
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: Martin Pool <mbp@sourcefrog.net>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: RFP: libvstr1 -- A fast and secure string/buffer library for C
X-Mailer: reportbug 2.37
Date: Mon, 19 Jan 2004 18:12:10 +1100
Message-Id: <20040119071210.F2BAB5AE5@wistful>
X-Server: High Performance Mail Server - http://surgemail.com
Delivered-To: submit@bugs.debian.org
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2004_01_14 
	(1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Status: No, hits=-5.0 required=4.0 tests=HAS_PACKAGE autolearn=no 
	version=2.60-bugs.debian.org_2004_01_14
X-Spam-Level: 

Package: wnpp
Severity: wishlist

* Package name    : libvstr1
  Version         : 1.0.11
  Upstream Author : James Antill <james@and.org>
* URL             : http://www.and.org/vstr/
* License         : LGPL
  Description     : A fast and secure string/buffer library for C

vstr is not used by any major packages as yet, but it looks very
promising.  I am using it in my own projects.



>From the web page:

Vstr is a string library, it's designed so you can work optimally with
readv()/writev() for input/output. This means that, for instance, you
can readv() data to the end of the string and writev() data from the
beginning of the string without having to allocate or move memory. It
also means that the library is completely happy with data that has
multiple zero bytes in it.

This design constraint means that unlike most string libraries Vstr
doesn't have an internal representation of the string where everything
can be accessed from a single (char *) pointer in C, the internal
representation is of multiple "blocks" or nodes each carrying some of
the data for the string. This model of representing the data also
means that as a string gets bigger the Vstr memory usage only goes up
linearly and has no inherent copying (due to other string libraries
increasing space for the string via. realloc() the memory usage can be
triple the required size and require a complete copy of the string).

It also means that adding, substituting or moving data anywhere in the
string can be optimized a lot, to require O(1) copying instead of
O(n). Speaking of O(1), it's worth remembering that if you have a Vstr
string with caching it is O(1) to get all the data to the writev()
system call (the cat example below shows an example of this, the write
call is always constant time.  As well as having features directly
related to doing IO well it contains functions for:

    * a printf like function that is fully ISO 9899:1999 (C99)
compliant, also having %m as standard and POSIX i18n parameter number
modifiers. It also allows gcc warning compatible customer format
specifiers (and includes pre-written custom format specifiers for ipv4
and ipv6 addresses, Vstr strings and more)
    * splitting of strings into parameter/record chunks (a la perl).
    * substituting data in a Vstr string
    * moving data from one Vstr string to another (or within a Vstr
string).
    * comparing strings (without regard for case, or taking into
account version information)
    * searching for data in strings (with or without regard for case).
    * counting spans of data in a string (the equivalent of strspn()
in ISO C).
    * converting data in a Vstr (Ie. delete/substitute unprintable
characters or making a Vstr string lowercase/uppercase).
    * parsing data from a Vstr string (Ie. numbers, or ipv4
addresses).
    * easily parsing and wrapping outgoing data in netstrings, for
fast and simple (and hence less error prone) network communication
    * the ability to cache aspects of data about a Vstr string, to
both simplify and speedup use of the string.
    * the ability to have empty data as part of the string, this is
somewhat useful for representing file transfers as a string as you can
represent the file data as empty data in the string.

It also has a number of functions for exporting data from a Vstr
string so you can easily use data generated with the Vstr outside of
the library.

The other unusual aspect of the Vstr string library is that it
attaches a notion of a locale to the string configuration and not
globally (as POSIX, and pretty much everything else does). This means
that you can do Network I/O in the C locale and user IO in the users
locale.

-- System Information:
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux wistful 2.4.23 #1 Mon Dec 15 21:16:43 EST 2003 i686
Locale: LANG=en_AU, LC_CTYPE=en_AU


---------------------------------------
Received: (at 228471-done) by bugs.debian.org; 14 Sep 2005 18:02:34 +0000
>From damog@cerdita.damog.net Wed Sep 14 11:02:34 2005
Return-path: <damog@cerdita.damog.net>
Received: from dsl-201-129-37-187.prod-infinitum.com.mx (cerdita.damog.net) [201.129.37.187] 
	by spohr.debian.org with esmtp (Exim 3.36 1 (Debian))
	id 1EFbab-0001RN-00; Wed, 14 Sep 2005 11:02:34 -0700
Received: by cerdita.damog.net (Postfix, from userid 1000)
	id 38C4D1078AB; Wed, 14 Sep 2005 13:02:23 -0500 (CDT)
To: 228471-done@bugs.debian.org
Subject: WNPP bug closed
Cc: 228471-submitter@bugs.debian.org
Message-Id: <20050914180223.38C4D1078AB@cerdita.damog.net>
Date: Wed, 14 Sep 2005 13:02:23 -0500 (CDT)
From: damog@cerdita.damog.net (David Moreno Garza)
Delivered-To: 228471-done@bugs.debian.org
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
	(1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Level: 
X-Spam-Status: No, hits=-5.0 required=4.0 tests=BAYES_00,VALID_BTS_CONTROL 
	autolearn=no version=2.60-bugs.debian.org_2005_01_02
X-CrossAssassin-Score: 307

Hello,

This an automatic message sent to owners of inactive ITPs on the Debian
Bug Tracking System.

I'm closing your bug because of the following reasons:

- It is older than 600 days old.
- It haven't had any activity recently.
- The amount of ITPs on the Debian BTS is huge and we need to
  clean up a bit the place.

If your bug shouldn't be closed, you are more than free to re-open it,
for example, if you still have intentions to package the software in
question or the like. To re-open it, you simply have to mail
control@bugs.debian.org with a body text like this:

reopen 123456
thanks bts

Replacing '123456' for the number of your ITP bug. The subject of the
mail is ignored. Or if you have any kind of problems when dealing with
the BTS, feel free to contact me and I'd be more than happy to help
you on this: <damog@debian.org>.

This is the first mass wnpp closing that will be done. The next close
will be done on inactive ITPs older than 450 days and finally, the
ones older than 365 days (an automatic script will close *inactive*
ITPs when they reach one year old).

A similar process will be applied to the RFP wnpp bugs in the next
days.

Thanks for your cooperation,
David Moreno Garza <damog@debian.org>.



Reply to: