mirror of
https://github.com/vim/vim.git
synced 2025-09-26 04:04:07 -04:00
updated for version 7.3.816
Problem: Can't compute a hash. Solution: Add the sha256() function. (Tyru, Hirohito Higashi)
This commit is contained in:
24
src/eval.c
24
src/eval.c
@@ -688,6 +688,9 @@ static void f_setreg __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_settabvar __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_settabwinvar __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_setwinvar __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
#ifdef FEAT_CRYPT
|
||||
static void f_sha256 __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
#endif /* FEAT_CRYPT */
|
||||
static void f_shellescape __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_shiftwidth __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_simplify __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
@@ -8055,6 +8058,9 @@ static struct fst
|
||||
{"settabvar", 3, 3, f_settabvar},
|
||||
{"settabwinvar", 4, 4, f_settabwinvar},
|
||||
{"setwinvar", 3, 3, f_setwinvar},
|
||||
#ifdef FEAT_CRYPT
|
||||
{"sha256", 1, 1, f_sha256},
|
||||
#endif
|
||||
{"shellescape", 1, 2, f_shellescape},
|
||||
{"shiftwidth", 0, 0, f_shiftwidth},
|
||||
{"simplify", 1, 1, f_simplify},
|
||||
@@ -16710,6 +16716,24 @@ setwinvar(argvars, rettv, off)
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef FEAT_CRYPT
|
||||
/*
|
||||
* "sha256({string})" function
|
||||
*/
|
||||
static void
|
||||
f_sha256(argvars, rettv)
|
||||
typval_T *argvars;
|
||||
typval_T *rettv;
|
||||
{
|
||||
char_u *p;
|
||||
|
||||
p = get_tv_string(&argvars[0]);
|
||||
rettv->vval.v_string = vim_strsave(
|
||||
sha256_bytes(p, (int)STRLEN(p), NULL, 0));
|
||||
rettv->v_type = VAR_STRING;
|
||||
}
|
||||
#endif /* FEAT_CRYPT */
|
||||
|
||||
/*
|
||||
* "shellescape({string})" function
|
||||
*/
|
||||
|
Reference in New Issue
Block a user