tadd vtlognames - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 52006c82447f374388721bc8eeadd5d463cb95b2
 (DIR) parent 6a4599d779d306a292f2437f99b5d7df6a41b313
 (HTM) Author: rsc <devnull@localhost>
       Date:   Thu, 12 May 2005 14:03:57 +0000
       
       add vtlognames
       
       Diffstat:
         M src/libventi/log.c                  |      35 +++++++++++++++++++++++++++++++
       
       1 file changed, 35 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/src/libventi/log.c b/src/libventi/log.c
       t@@ -30,6 +30,41 @@ hash(char *s)
                return h;
        }
        
       +char**
       +vtlognames(int *pn)
       +{
       +        int i, nname, size;
       +        VtLog *l;
       +        char **s, *a, *e;
       +        
       +        qlock(&vl.lk);
       +        size = 0;
       +        nname = 0;
       +        for(i=0; i<nelem(vl.hash); i++)
       +        for(l=vl.hash[i]; l; l=l->next){
       +                nname++;
       +                size += strlen(l->name)+1;
       +        }
       +        
       +        s = vtmalloc(nname*sizeof(char*)+size);
       +        a = (char*)(s+nname);
       +        e = (char*)s+nname*sizeof(char*)+size;
       +
       +        size = 0;
       +        nname = 0;
       +        for(i=0; i<nelem(vl.hash); i++)
       +        for(l=vl.hash[i]; l; l=l->next){
       +                strcpy(a, l->name);
       +                s[nname++] = a;
       +                a += strlen(a)+1;
       +        }
       +        *pn = nname;
       +        assert(a == e);
       +        qunlock(&vl.lk);
       +
       +        return s;
       +}
       +
        VtLog*
        vtlogopen(char *name, uint size)
        {