Branch: Tag:

1999-01-16

1999-01-16 01:20:39 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

bugfix in Array.transpose

Rev: src/builtin_functions.c:1.143

4:   ||| See the files COPYING and DISCLAIMER for more information.   \*/   #include "global.h" - RCSID("$Id: builtin_functions.c,v 1.142 1998/12/21 09:38:31 hubbe Exp $"); + RCSID("$Id: builtin_functions.c,v 1.143 1999/01/16 01:20:39 hubbe Exp $");   #include "interpret.h"   #include "svalue.h"   #include "pike_macros.h"
37:   #include "opcodes.h"   #include "cyclic.h"   #include "signal_handler.h" + #include "security.h"      #ifdef HAVE_POLL   #ifdef HAVE_POLL_H
352:      void f_add_constant(INT32 args)   { +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("add_constant: permission denied.\n"));    if(args<1)    PIKE_ERROR("add_constant", "Too few arguments.\n", sp, args);   
1084:      void f_exit(INT32 args)   { +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("exit: permission denied.\n"));    if(args < 1)    PIKE_ERROR("exit", "Too few arguments.\n", sp, args);   
1097:      void f__exit(INT32 args)   { +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("_exit: permission denied.\n"));    if(args < 1)    PIKE_ERROR("_exit", "Too few arguments.\n", sp, args);   
1902: Inside #if defined(PIKE_DEBUG)
  void f__verify_internals(INT32 args)   {    INT32 tmp=d_flag; +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("_exit: permission denied.\n"));    d_flag=0x7fffffff;    do_debug();    d_flag=tmp;
1912: Inside #if defined(PIKE_DEBUG)
  void f__debug(INT32 args)   {    INT32 i=d_flag; +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("_exit: permission denied.\n"));    get_all_args("_debug",args,"%i",&d_flag);    pop_n_elems(args);    push_int(i);
1923: Inside #if defined(PIKE_DEBUG) and #if defined(YYDEBUG)
  {    extern int yydebug;    INT32 i = yydebug; +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("_exit: permission denied.\n"));    get_all_args("_compiler_trace", args, "%i", &yydebug);    pop_n_elems(args);    push_int(i);
3257:   void f__next(INT32 args)   {    struct svalue tmp; +  +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("_next: permission denied.\n")); +     if(!args)    PIKE_ERROR("_next", "Too few arguments.\n", sp, args);   
3285:   void f__prev(INT32 args)   {    struct svalue tmp; +  +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("_prev: permission denied.\n")); +     if(!args)    PIKE_ERROR("_prev", "Too few arguments.\n", sp, args);   
3339:      void f_replace_master(INT32 args)   { +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("replace_master: permission denied.\n")); +     if(!args)    PIKE_ERROR("replace_master", "Too few arguments.\n", sp, 0);    if(sp[-args].type != T_OBJECT)
3576:    out=allocate_array(sizeininner);       for(i=0; i<sizein; i++) -  type|=in->item->u.array->type_field; +  type|=in->item[i].u.array->type_field;       for(j=0; j<sizeininner; j++)    {
3603: Inside #if defined(DEBUG_MALLOC)
  #ifdef DEBUG_MALLOC   void f__reset_dmalloc(INT32 args)   { +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("replace_master: permission denied.\n"));    pop_n_elems(args);    reset_debug_malloc();   }
3611: Inside #if defined(PIKE_DEBUG)
  #ifdef PIKE_DEBUG   void f__locate_references(INT32 args)   { +  CHECK_SECURITY(0,SECURITY_BIT_SECURITY, ("replace_master: permission denied.\n"));    if(args)    locate_references(sp[-args].u.refs);    pop_n_elems(args-1);