!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache. PHP/5.6.40 

uname -a: Linux cpanel06wh.bkk1.cloud.z.com 2.6.32-954.3.5.lve1.4.80.el6.x86_64 #1 SMP Thu Sep 24
01:42:00 EDT 2020 x86_64
 

uid=851(cp949260) gid=853(cp949260) groups=853(cp949260) 

Safe-mode: OFF (not secure)

/opt/td-agent/embedded/include/   drwxrwxr-x
Free 201.3 GB of 981.82 GB (20.5%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     histedit.h (8.98 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*    $NetBSD: histedit.h,v 1.49 2012/05/31 13:16:39 christos Exp $    */

/*-
 * Copyright (c) 1992, 1993
 *    The Regents of the University of California.  All rights reserved.
 *
 * This code is derived from software contributed to Berkeley by
 * Christos Zoulas of Cornell University.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *    @(#)histedit.h    8.2 (Berkeley) 1/3/94
 */

/*
 * histedit.h: Line editor and history interface.
 */
#ifndef _HISTEDIT_H_
#define    _HISTEDIT_H_

#define    LIBEDIT_MAJOR 2
#define    LIBEDIT_MINOR 11

#include <sys/types.h>
#include <stdio.h>

#ifdef __cplusplus
extern "C" {
#endif

/*
 * ==== Editing ====
 */

typedef struct editline EditLine;

/*
 * For user-defined function interface
 */
typedef struct lineinfo {
    const char    *buffer;
    const char    *cursor;
    const char    *lastchar;
} LineInfo;

/*
 * EditLine editor function return codes.
 * For user-defined function interface
 */
#define    CC_NORM        0
#define    CC_NEWLINE    1
#define    CC_EOF        2
#define    CC_ARGHACK    3
#define    CC_REFRESH    4
#define    CC_CURSOR    5
#define    CC_ERROR    6
#define    CC_FATAL    7
#define    CC_REDISPLAY    8
#define    CC_REFRESH_BEEP    9

/*
 * Initialization, cleanup, and resetting
 */
EditLine    *el_init(const char *, FILE *, FILE *, FILE *);
void         el_end(EditLine *);
void         el_reset(EditLine *);

/*
 * Get a line, a character or push a string back in the input queue
 */
const char    *el_gets(EditLine *, int *);
int         el_getc(EditLine *, char *);
void         el_push(EditLine *, const char *);

/*
 * Beep!
 */
void         el_beep(EditLine *);

/*
 * High level function internals control
 * Parses argc, argv array and executes builtin editline commands
 */
int         el_parse(EditLine *, int, const char **);

/*
 * Low level editline access functions
 */
int         el_set(EditLine *, int, ...);
int         el_get(EditLine *, int, ...);
unsigned char    _el_fn_complete(EditLine *, int);

/*
 * el_set/el_get parameters
 *
 * When using el_wset/el_wget (as opposed to el_set/el_get):
 *   Char is wchar_t, otherwise it is char.
 *   prompt_func is el_wpfunc_t, otherwise it is el_pfunc_t .

 * Prompt function prototypes are:
 *   typedef char    *(*el_pfunct_t)  (EditLine *);
 *   typedef wchar_t *(*el_wpfunct_t) (EditLine *);
 *
 * For operations that support set or set/get, the argument types listed are for
 * the "set" operation. For "get", each listed type must be a pointer.
 * E.g. EL_EDITMODE takes an int when set, but an int* when get.
 * 
 * Operations that only support "get" have the correct argument types listed.
 */
#define    EL_PROMPT    0    /* , prompt_func);              set/get */
#define    EL_TERMINAL    1    /* , const char *);              set/get */
#define    EL_EDITOR    2    /* , const Char *);              set/get */
#define    EL_SIGNAL    3    /* , int);                  set/get */
#define    EL_BIND        4    /* , const Char *, ..., NULL);          set     */
#define    EL_TELLTC    5    /* , const Char *, ..., NULL);          set     */
#define    EL_SETTC    6    /* , const Char *, ..., NULL);          set     */
#define    EL_ECHOTC    7    /* , const Char *, ..., NULL);        set     */
#define    EL_SETTY    8    /* , const Char *, ..., NULL);        set     */
#define    EL_ADDFN    9    /* , const Char *, const Char,        set     */
                /*   el_func_t);                   */
#define    EL_HIST        10    /* , hist_fun_t, const void *);          set     */
#define    EL_EDITMODE    11    /* , int);                  set/get */
#define    EL_RPROMPT    12    /* , prompt_func);              set/get */
#define    EL_GETCFN    13    /* , el_rfunc_t);              set/get */
#define    EL_CLIENTDATA    14    /* , void *);                  set/get */
#define    EL_UNBUFFERED    15    /* , int);                  set/get */
#define    EL_PREP_TERM    16    /* , int);                  set     */
#define    EL_GETTC    17    /* , const Char *, ..., NULL);          get */
#define    EL_GETFP    18    /* , int, FILE **);                  get */
#define    EL_SETFP    19    /* , int, FILE *);              set     */
#define    EL_REFRESH    20    /* , void);                  set     */
#define    EL_PROMPT_ESC    21    /* , prompt_func, Char);          set/get */
#define    EL_RPROMPT_ESC    22    /* , prompt_func, Char);          set/get */
#define    EL_RESIZE    23    /* , el_zfunc_t, void *);          set     */

#define    EL_BUILTIN_GETCFN    (NULL)

/*
 * Source named file or $PWD/.editrc or $HOME/.editrc
 */
int        el_source(EditLine *, const char *);

/*
 * Must be called when the terminal changes size; If EL_SIGNAL
 * is set this is done automatically otherwise it is the responsibility
 * of the application
 */
void         el_resize(EditLine *);

/*
 * User-defined function interface.
 */
const LineInfo    *el_line(EditLine *);
int         el_insertstr(EditLine *, const char *);
void         el_deletestr(EditLine *, int);


/*
 * ==== History ====
 */

typedef struct history History;

typedef struct HistEvent {
    int         num;
    const char    *str;
} HistEvent;

/*
 * History access functions.
 */
History *    history_init(void);
void        history_end(History *);

int        history(History *, HistEvent *, int, ...);

#define    H_FUNC         0    /* , UTSL        */
#define    H_SETSIZE     1    /* , const int);    */
#define    H_GETSIZE     2    /* , void);        */
#define    H_FIRST         3    /* , void);        */
#define    H_LAST         4    /* , void);        */
#define    H_PREV         5    /* , void);        */
#define    H_NEXT         6    /* , void);        */
#define    H_CURR         8    /* , const int);    */
#define    H_SET         7    /* , int);        */
#define    H_ADD         9    /* , const wchar_t *);    */
#define    H_ENTER        10    /* , const wchar_t *);    */
#define    H_APPEND    11    /* , const wchar_t *);    */
#define    H_END        12    /* , void);        */
#define    H_NEXT_STR    13    /* , const wchar_t *);    */
#define    H_PREV_STR    14    /* , const wchar_t *);    */
#define    H_NEXT_EVENT    15    /* , const int);    */
#define    H_PREV_EVENT    16    /* , const int);    */
#define    H_LOAD        17    /* , const char *);    */
#define    H_SAVE        18    /* , const char *);    */
#define    H_CLEAR        19    /* , void);        */
#define    H_SETUNIQUE    20    /* , int);        */
#define    H_GETUNIQUE    21    /* , void);        */
#define    H_DEL        22    /* , int);        */
#define    H_NEXT_EVDATA    23    /* , const int, histdata_t *);    */
#define    H_DELDATA    24    /* , int, histdata_t *);*/
#define    H_REPLACE    25    /* , const char *, histdata_t);    */



/*
 * ==== Tokenization ====
 */

typedef struct tokenizer Tokenizer;

/*
 * String tokenization functions, using simplified sh(1) quoting rules
 */
Tokenizer    *tok_init(const char *);
void         tok_end(Tokenizer *);
void         tok_reset(Tokenizer *);
int         tok_line(Tokenizer *, const LineInfo *,
            int *, const char ***, int *, int *);
int         tok_str(Tokenizer *, const char *,
            int *, const char ***);

/*
 * Begin Wide Character Support
 */
#ifdef __linux__
/* Apparently we need _GNU_SOURCE defined to get access to wcsdup on Linux */
#ifndef _GNU_SOURCE
#define _GNU_SOURCE
#endif
#endif

#include <wchar.h>
#include <wctype.h>

/*
 * Wide character versions
 */

/*
 * ==== Editing ====
 */
typedef struct lineinfow {
    const wchar_t    *buffer;
    const wchar_t    *cursor;
    const wchar_t    *lastchar;
} LineInfoW;

const wchar_t    *el_wgets(EditLine *, int *);
int         el_wgetc(EditLine *, wchar_t *);
void         el_wpush(EditLine *, const wchar_t *);

int         el_wparse(EditLine *, int, const wchar_t **);

int         el_wset(EditLine *, int, ...);
int         el_wget(EditLine *, int, ...);

const LineInfoW    *el_wline(EditLine *);
int         el_winsertstr(EditLine *, const wchar_t *);
#define          el_wdeletestr  el_deletestr

/*
 * ==== History ====
 */
typedef struct histeventW {
    int         num;
    const wchar_t    *str;
} HistEventW;

typedef struct historyW HistoryW;

HistoryW *    history_winit(void);
void        history_wend(HistoryW *);

int        history_w(HistoryW *, HistEventW *, int, ...);

/*
 * ==== Tokenization ====
 */
typedef struct tokenizerW TokenizerW;

/* Wide character tokenizer support */
TokenizerW    *tok_winit(const wchar_t *);
void         tok_wend(TokenizerW *);
void         tok_wreset(TokenizerW *);
int         tok_wline(TokenizerW *, const LineInfoW *,
            int *, const wchar_t ***, int *, int *);
int         tok_wstr(TokenizerW *, const wchar_t *,
            int *, const wchar_t ***);

#ifdef __cplusplus
}
#endif

#endif /* _HISTEDIT_H_ */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

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

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

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.1057 ]--