!C99Shell v. 1.0 pre-release build #16!

Software: Apache/2.0.54 (Fedora). PHP/5.0.4 

uname -a: Linux mina-info.me 2.6.17-1.2142_FC4smp #1 SMP Tue Jul 11 22:57:02 EDT 2006 i686 

uid=48(apache) gid=48(apache) groups=48(apache)
context=system_u:system_r:httpd_sys_script_t
 

Safe-mode: OFF (not secure)

/usr/share/doc/bash-3.0/loadables/   drwxr-xr-x
Free 3.8 GB of 27.03 GB (14.06%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     cat.c (1.49 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
* cat replacement
*
* no options - the way cat was intended
*/

#include <fcntl.h>
#include <errno.h>

#include "builtins.h"
#include "shell.h"

#ifndef errno
extern int errno;
#endif

extern char *strerror ();
extern char **make_builtin_argv ();

static int
fcopy(fd)
int    fd;
{
    char    buf[1024], *s;
    int    n, w, e;

    while (n = read(fd, buf, sizeof (buf))) {
        w = write(1, buf, n);
        if (w != n) {
            e = errno;
            write(2, "cat: write error: ", 18);
            s = strerror(e);
            write(2, s, strlen(s));
            write(2, "\n", 1);
            return 1;
        }
    }
    return 0;
}

cat_main (argc, argv)
int    argc;
char    **argv;
{
    int    i, fd, r;
    char    *s;

    if (argc == 1)
        return (fcopy(0));

    for (i = r = 1; i < argc; i++) {
        if (argv[i][0] == '-' && argv[i][1] == '\0')
            fd = 0;
        else {
            fd = open(argv[i], O_RDONLY, 0666);
            if (fd < 0) {
                s = strerror(errno);
                write(2, "cat: cannot open ", 17);
                write(2, argv[i], strlen(argv[i]));
                write(2, ": ", 2);
                write(2, s, strlen(s));
                write(2, "\n", 1);
                continue;
            }
        }
        r = fcopy(fd);
        if (fd != 0)
            close(fd);
    }
    return (r);
}

cat_builtin(list)
WORD_LIST *list;
{
    char    **v;
    int    c, r;

    v = make_builtin_argv(list, &c);
    r = cat_main(c, v);
    free(v);

    return r;
}

char *cat_doc[] = {
    "Read each FILE and display it on the standard output.   If any",
    "FILE is `-' or if no FILE argument is given, the standard input",
    "is read.",
    (char *)0
};

struct builtin cat_struct = {
    "cat",
    cat_builtin,
    BUILTIN_ENABLED,
    cat_doc,
    "cat [-] [file ...]",
    0
};

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #16 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0034 ]--