ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:22.21 GB of 70.42 GB (31.54%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ usr/ src/ maildrop-2.2.0/ rfc822/ - drwxr-xr-x

Directory:
Viewing file:     reftest.c (7.84 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
** Copyright 2000 Double Precision, Inc.
** See COPYING for distribution information.
*/

/*
** $Id: reftest.c,v 1.7 2003/05/30 01:24:16 mrsam Exp $
*/

#include    "config.h"

#include    <stdio.h>
#include    <stdlib.h>
#include    <string.h>
#include    <time.h>

#if    HAVE_STRINGS_H
#include    <strings.h>
#endif

#if    HAVE_LOCALE_H
#include    <locale.h>
#endif

#include    "rfc822.h"
#include    "imaprefs.h"


static void test1()
{
struct imap_refmsgtable *mt=rfc822_threadalloc();
char    buf[20];
struct imap_refmsg *p;

        strcpy(buf, "a@b");
        p=rfc822_threadallocmsg(mt, buf);
        strcpy(buf, "c@d");
        p=rfc822_threadallocmsg(mt, buf);

    printf("%s\n", (rfc822_threadsearchmsg(mt, "a@b")
            ? "found":"not found"));
    printf("%s\n", (rfc822_threadsearchmsg(mt, "c@d")
            ? "found":"not found"));
    printf("%s\n", (rfc822_threadsearchmsg(mt, "e@f")
            ? "found":"not found"));

    rfc822_threadfree(mt);
}

static void prtree(struct imap_refmsg *m)
{
    printf("<%s>", m->msgid ? m->msgid:"");

    if (m->isdummy)
    {
        printf(" (dummy)");
    }

    printf(".parent=");
    if (m->parent)
        printf("<%s>", m->parent->msgid ? m->parent->msgid:"");
    else
        printf("ROOT");

    printf("\n");

    for (m=m->firstchild; m; m=m->nextsib)
        prtree(m);
}

static void prpc(struct imap_refmsgtable *mt)
{
    struct imap_refmsg *root=rfc822_threadgetroot(mt), *m;

    if (!root)
        return;

    for (m=root->firstchild; m; m=m->nextsib)
        prtree(m);

    printf("\n\n");
}

static void test2()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<1>", NULL,
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<2>",
             "<1>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<4>",
             "<1> <2> <3>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    prpc(mt);
    rfc822_threadfree(mt);
}

static void test3()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<4>",
             "<2> <1> <3>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<3>",
             "<1> <2>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<2>",
             "<1>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<1>", NULL,
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    prpc(mt);
    rfc822_threadfree(mt);
}

static void test4()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<1>", NULL,
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<2>", "<1>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<4>", "<1> <2> <3>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    prpc(mt);
    rfc822_threadprune(mt);
    prpc(mt);
    rfc822_threadfree(mt);
}

static void test5()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<4>", "<1> <2> <3>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<3>", NULL,
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    prpc(mt);
    rfc822_threadprune(mt);
    prpc(mt);
    rfc822_threadfree(mt);
}

static void prsubj(struct imap_refmsgtable *p)
{
    struct imap_subjlookup *s;
    int i;

    for (i=0; i<sizeof(p->subjtable)/sizeof(p->subjtable[0]); i++)
        for (s=p->subjtable[i]; s; s=s->nextsubj)
            printf("subject(%s)=<%s>\n", s->subj,
                   s->msg->msgid ? s->msg->msgid:"");
    printf("\n\n");
}

static void test6()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<message1>", NULL,
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message10>", NULL,
             "subject 2",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 2);

    rfc822_threadmsg(mt, "<message3>", "<message2>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 3);

    rfc822_threadmsg(mt, "<message11>", NULL,
             "Re: subject 4",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 4);

    rfc822_threadmsg(mt, "<message12>", NULL,
             "subject 4",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 5);

    rfc822_threadmsg(mt, "<message13>", NULL,
             "subject 5",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 6);

    rfc822_threadmsg(mt, "<message14>", NULL,
             "re: subject 5",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 7);

    rfc822_threadprune(mt);
    rfc822_threadsortsubj(rfc822_threadgetroot(mt));
    rfc822_threadgathersubj(mt, rfc822_threadgetroot(mt));
    prpc(mt);
    prsubj(mt);
    rfc822_threadfree(mt);
}

static void test7()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<message1>", "<message1-dummy>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message2>", "<message2-dummy>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:58 -0700", 0, 1);
    rfc822_threadprune(mt);
    rfc822_threadsortsubj(rfc822_threadgetroot(mt));
    rfc822_threadgathersubj(mt, rfc822_threadgetroot(mt));
    prpc(mt);
    prsubj(mt);
    rfc822_threadmergesubj(mt, rfc822_threadgetroot(mt));
    prpc(mt);
    rfc822_threadfree(mt);
}

static void test8()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<message4>", NULL,
             "subject 2",
             "Thu, 29 Jun 2000 14:41:51 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message2>", NULL,
             "subject 1",
             "Thu, 29 Jun 2000 14:41:52 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message1>", "<message1-dummy>",
             "subject 1",
             "Thu, 29 Jun 2000 14:41:53 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message3>", NULL,
             "Re: subject 2",
             "Thu, 29 Jun 2000 14:41:54 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message10>", NULL,
             "subject 10",
             "Thu, 29 Jun 2000 14:41:55 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message11>", NULL,
             "subject 10",
             "Thu, 29 Jun 2000 14:41:56 -0700", 0, 1);

    rfc822_threadprune(mt);
    rfc822_threadsortsubj(rfc822_threadgetroot(mt));
    rfc822_threadgathersubj(mt, rfc822_threadgetroot(mt));
    prpc(mt);
    prsubj(mt);
    rfc822_threadmergesubj(mt, rfc822_threadgetroot(mt));
    prpc(mt);
    rfc822_threadfree(mt);
}

static void test9()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<message1>", NULL,
             "subject 1",
             "Thu, 20 Jun 2000 14:41:55 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message2>", NULL,
             "subject 1",
             "Thu, 19 Jun 2000 14:41:51 -0700", 0, 2);

    rfc822_threadmsg(mt, "<message3>", NULL,
             "subject 1",
             "Thu, 21 Jun 2000 14:41:56 -0700", 0, 3);

    rfc822_threadmsg(mt, "<message4>", "<message2>",
             "subject 2",
             "Thu, 21 Jun 2000 14:41:54 -0700", 0, 6);

    rfc822_threadmsg(mt, "<message5>", "<message2>",
             "subject 2",
             "Thu, 21 Jun 2000 14:41:53 -0700", 0, 5);

    rfc822_threadmsg(mt, "<message6>", "<message2>",
             "subject 2",
             "Thu, 20 Jun 2000 14:41:52 -0700", 0, 4);


    rfc822_threadprune(mt);
    rfc822_threadsortsubj(rfc822_threadgetroot(mt));
    rfc822_threadgathersubj(mt, rfc822_threadgetroot(mt));
    rfc822_threadmergesubj(mt, rfc822_threadgetroot(mt));
    rfc822_threadsortbydate(mt);
    prpc(mt);
    rfc822_threadfree(mt);
}

static void test10()
{
    struct imap_refmsgtable *mt=rfc822_threadalloc();

    rfc822_threadmsg(mt, "<message1>", NULL,
             "subject 1",
             "Thu, 20 Jun 2000 14:41:58 -0700", 0, 1);

    rfc822_threadmsg(mt, "<message4>", "<message1>",
             "subject 2",
             "Thu, 21 Jun 2000 14:41:58 -0700", 0, 6);

    rfc822_threadmsg(mt, "<message1>", NULL,
             "subject 2",
             "Thu, 21 Jun 2000 14:41:58 -0700", 0, 5);

    rfc822_threadmsg(mt, "<message4>", "<message1>",
             "subject 2",
             "Thu, 21 Jun 2000 14:41:58 -0700", 0, 6);

    rfc822_threadprune(mt);
    rfc822_threadsortsubj(rfc822_threadgetroot(mt));
    rfc822_threadgathersubj(mt, rfc822_threadgetroot(mt));
    rfc822_threadmergesubj(mt, rfc822_threadgetroot(mt));
    rfc822_threadsortbydate(mt);
    prpc(mt);
    rfc822_threadfree(mt);
}

int main(int argc, char **argv)
{

#if HAVE_SETLOCALE
    setlocale(LC_ALL, "C");
#endif

    test1();
    test2();
    test3();
    test4();
    test5();
    test6();
    test7();
    test8();
    test9();
    test10();
    return (0);
}
Command:
Quick Commands:
Upload:
[Read-Only] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [Read-Only]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.1735 seconds