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:23.7 GB of 70.42 GB (33.65%)
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/ courier-0.66.1/ maildir/ - drwxrwxrwx

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

#if HAVE_CONFIG_H
#include "config.h"
#endif

#include    <sys/types.h>
#include    <sys/stat.h>
#include    <string.h>
#include    <stdlib.h>
#include    <time.h>
#if    HAVE_UNISTD_H
#include    <unistd.h>
#endif
#include    <stdio.h>
#include    <ctype.h>
#include    <errno.h>

#include    "maildirmisc.h"


char *maildir_name2dir(const char *maildir,    /* DIR location */
               const char *foldername) /* INBOX.name */
{
    const char *inbox=INBOX;
    int l=strlen(inbox);
    char *p;

    if (!maildir)    maildir=".";

    if (foldername && strncasecmp(foldername, INBOX, l) == 0 &&
        strchr(foldername, '/') == NULL)
    {
        if (foldername[l] == 0)
            return strdup(maildir); /* INBOX: main maildir inbox */

        if (foldername[l] == '.')
        {
            const char *r;

            for (r=foldername; *r; r++)
            {
                if (*r != '.')    continue;

                if (r[1] == 0 || r[1] == '.')
                {
                    errno=EINVAL;
                    return (0);
                }
            }

            r=strchr(foldername, '.');

            p=malloc(strlen(maildir)+strlen(r) + 2);

            if (!p)
                return NULL;

            return (strcat(strcat(strcpy(p, maildir), "/"),
                       r));
        }
    }

    errno=EINVAL;
    return NULL;
}

char *maildir_location(const char *homedir,
               const char *maildir)
{
    char *p;

    if (*maildir == '/')
        return strdup(maildir);

    p=malloc(strlen(homedir)+strlen(maildir)+2);

    if (!p)
        return NULL;
    strcat(strcat(strcpy(p, homedir), "/"), maildir);
    return p;
}

char *maildir_folderdir(const char *maildir, const char *foldername)
{
char    *p;
const char *r;
size_t    l;

    if (!maildir)    maildir=".";
    l=strlen(maildir);

    if (foldername == 0 ||
        strcasecmp(foldername, INBOX) == 0)
    {
        if ((p=malloc(l+1)) == 0)    return (0);
        strcpy(p, maildir);
        return(p);
    }

    /* Rules: no leading/trailing periods, no /s */
    if (*foldername == '.' || strchr(foldername, '/'))
    {
        errno=EINVAL;
        return (0);
    }

    for (r=foldername; *r; r++)
    {
        if (*r != '.')    continue;
        if (r[1] == 0 || r[1] == '.')
        {
            errno=EINVAL;
            return (0);
        }
    }

    if ((p=malloc(l+strlen(foldername)+3)) == 0)    return (0);
    *p=0;
    if (strcmp(maildir, "."))
        strcat(strcpy(p, maildir), "/");
    
    return (strcat(strcat(p, "."), foldername));
}
Command:
Quick Commands:
Upload:
[OK] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [OK]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.1911 seconds