aboutsummaryrefslogtreecommitdiffstats
path: root/ext/dl/dl.c
Commit message (Collapse)AuthorAgeFilesLines
* * ext/dl/*: remove DL as it is replaced by Fiddle.tenderlove2014-10-311-569/+0
| | | | | | | | | [Feature #5458] Thanks to Jonan Scheffler <jonanscheffler@gmail.com> for this patch * test/dl/*: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* use NUM2SIZET instead of NUM2INTkazu2014-02-251-2/+2
| | | | | | | | | | | | | * ext/dl/dl.c (rb_dl_realloc): use NUM2SIZET instead of NUM2INT. * ext/fiddle/fiddle.c (rb_fiddle_realloc): ditto. * ext/dl/dl.c (rb_dl_malloc): use NUM2SIZET instead of NUM2INT. Coverity Scan found this bug. * ext/fiddle/fiddle.c (rb_fiddle_malloc): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * safe.c (rb_set_safe_level, safe_setter): raise an ArgumentErrorshugo2013-06-121-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when $SAFE is set to 4. $SAFE=4 is now obsolete. [ruby-core:55222] [Feature #8468] * object.c (rb_obj_untrusted, rb_obj_untrust, rb_obj_trust): Kernel#untrusted?, untrust, and trust are now deprecated. Their behavior is same as tainted?, taint, and untaint, respectively. * include/ruby/ruby.h (OBJ_UNTRUSTED, OBJ_UNTRUST): OBJ_UNTRUSTED() and OBJ_UNTRUST() are aliases of OBJ_TAINTED() and OBJ_TAINT(), respectively. * array.c, class.c, debug.c, dir.c, encoding.c, error.c, eval.c, ext/curses/curses.c, ext/dbm/dbm.c, ext/dl/cfunc.c, ext/dl/cptr.c, ext/dl/dl.c, ext/etc/etc.c, ext/fiddle/fiddle.c, ext/fiddle/pointer.c, ext/gdbm/gdbm.c, ext/readline/readline.c, ext/sdbm/init.c, ext/socket/ancdata.c, ext/socket/basicsocket.c, ext/socket/socket.c, ext/socket/udpsocket.c, ext/stringio/stringio.c, ext/syslog/syslog.c, ext/tk/tcltklib.c, ext/win32ole/win32ole.c, file.c, gc.c, hash.c, io.c, iseq.c, load.c, marshal.c, object.c, proc.c, process.c, random.c, re.c, safe.c, string.c, thread.c, transcode.c, variable.c, vm_insnhelper.c, vm_method.c, vm_trace.c: remove code for $SAFE=4. * test/dl/test_dl2.rb, test/erb/test_erb.rb, test/readline/test_readline.rb, test/readline/test_readline_history.rb, test/ruby/test_alias.rb, test/ruby/test_array.rb, test/ruby/test_dir.rb, test/ruby/test_encoding.rb, test/ruby/test_env.rb, test/ruby/test_eval.rb, test/ruby/test_exception.rb, test/ruby/test_file_exhaustive.rb, test/ruby/test_hash.rb, test/ruby/test_io.rb, test/ruby/test_method.rb, test/ruby/test_module.rb, test/ruby/test_object.rb, test/ruby/test_pack.rb, test/ruby/test_rand.rb, test/ruby/test_regexp.rb, test/ruby/test_settracefunc.rb, test/ruby/test_struct.rb, test/ruby/test_thread.rb, test/ruby/test_time.rb: remove tests for $SAFE=4. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typos. Patch by k_takata.ktsj2013-05-191-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl: Added documentation. Patch by Vincent Batts.drbrain2012-05-301-2/+46
| | | | | | | [ruby-trunk - Bug #6496] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35846 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/dl.c (Init_dl): support intrinsic types, size_t, ptrdiff_tnobu2012-02-251-0/+122
| | | | | | | | and intptr_t. [ruby-core:42460][Feature #5992] * ext/fiddle/fiddle.c (Init_fiddle): ditto. * ext/dl/lib/dl/cparser.rb (DL::CParser#parse_ctype): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/dl.c (Init_dl): fix mangled documnet.nobu2012-02-091-16/+16
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl: Add documentation. Patch by Vincent Batts. [Ruby 1.9 - Bug #5192]drbrain2011-08-161-0/+242
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl: revert dl with libffi because it can't run on mswin now.naruse2010-02-251-2/+15
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Wed Feb 3 10:12:09 2010 Aaron Patterson <tenderlove@ruby-lang.org>tenderlove2010-02-031-15/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ext/dl/function.c: DL::Function now uses libffi * ext/dl/cfunc.c (rb_dl_set_last_error): set to non static so errors can be exposed. * ext/dl/closure.c: DL::Closure will now be used in place of ext/dl/callback/*. * ext/dl/dl.c: legacy callbacks removed in favor of libffi * ext/dl/dl_converions.(c,h): used for converting ruby types to FFI types. * ext/dl/callback/*: replaced by libffi callbacks. * ext/dl/lib/dl/callback.rb: Converting internal callbacks to use DL::Closure * ext/dl/lib/dl/closure.rb: Ruby parts of the new DL::Closure object * ext/dl/lib/dl/import.rb: More conversion to use DL::Closure object * ext/dl/lib/dl/value.rb (ruby2ffi): adding private method for DL::CPtr to ffi value conversion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/cptr.c (rb_dlptr_size) splitting function to reduce complexitytenderlove2009-11-011-0/+5
| | | | | | | | | | | * ext/dl/cptr.c (rb_dlptr_null_p, rb_dlptr_aref, rb_dlptr_aset) adding documentation * ext/dl/dl.c (rb_dl_free) adding documentation * test/dl/test_cptr.rb (test_null?, test_size, test_size=, test_aref_aset) Improving test coverage * test/dl/test_dl2.rb (test_free_secure) improving test coverage git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/dl/test_dl2.rb (**) testing malloc and realloctenderlove2009-11-011-0/+13
| | | | | | * ext/dl/dl.c (**) adding documentation git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/ext/dl/handle.c (rb_dlhandle_initialize) added rb_secure(2)tenderlove2009-10-231-1/+0
| | | | | | | [ruby-core:25762] * ext/dl/dl.c (rb_dl_dlopen) removed rb_secure(2) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/dl.c (Init_dl): protoized.nobu2009-03-091-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/dl.c (rb_dl_init_callbacks): autoloads callbacks.nobu2009-03-031-4/+15
| | | | | | | * ext/dl/callback: split from dl. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/cfunc.c (rb_dlcfunc_call): add taint check.matz2008-08-111-0/+5
| | | | | | | | | | | | * ext/dl/dl.c (rb_dl_malloc): add rb_secure(2). * ext/dl/dl.c (rb_dl_realloc): ditto. * ext/dl/dl.c (rb_dl_free): ditto. * ext/dl/dl.c (rb_dl_ptr2value): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby: moved public headers.nobu2007-06-101-3/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* conformed to the usage of FUNC_CDECL/STDCALL described in [ruby-dev:28970].ttate2006-07-061-25/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c: ruby 1.9 HEAD 64 bit warnings clean up frommatz2006-07-031-0/+7
| | | | | | | | | | <ville.mattila at stonesoft.com>. [ruby-core:08120] * ChangeLog: remove some direct reference to mail addresses to prevent spams. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Added DL::BUILD_RUBY_PLATFORM,BUILD_RUBY_VERSION.ttate2005-05-141-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* added bcc32 support [ruby-dev:25657] and fixed a minor bug.ttate2005-02-081-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Added VC++ support thanks to U.Nakamura's patch. [ruby-dev:25644]ttate2005-02-061-0/+9
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/dl.c (Init_dl): function declaration should precedeakr2005-02-061-3/+3
| | | | | | | statements before C99. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* added new files.ttate2005-02-041-0/+138
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove all files to replace ruby-dl with ruby-dl2.ttate2005-02-041-721/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * rubyio.h, io.c, ext/dl/dl.c, ext/pty/pty.c, ext/socket/socket.c:akr2004-12-081-1/+1
| | | | | | | | | | create FILE object only when required: popen(3) and DL's IO#to_ptr. [ruby-dev:25122] * io.c (rb_io_binmode): use setmode for Human68k. [ruby-dev:25121] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use 'P' instead of 'p' in types.rb.ttate2004-11-251-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merged Nakada-san's patch [ruby-core:02916].ttate2004-05-231-3/+10
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/dl.c (rb_dl_callback): use rb_block_proc() instead ofusa2003-06-161-1/+1
| | | | | | | | | rb_block_new(). * ext/win32ole/win32ole.c (ev_on_event): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (define_final): eliminate rb_f_lambda() call.matz2003-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * class.c (rb_scan_args): ditto. * signal.c (sig_trap): ditto. * hash.c (rb_hash_initialize): ditto. * variable.c (rb_f_trace_var): ditto. * ext/dl/dl.c (rb_dl_callback): ditto. * ext/win32ole/win32ole.c (ev_on_event): ditto. * eval.c (ruby_cleanup): $SAFE is turned off in the finalization. Each END proc should preserve its own $SAFE level. [ruby-core:01119] * marshal.c (marshal_load): remove unused variable "hash". [ruby-core:01120] * hash.c (env_str_new): freeze strings from ENV. [ruby-talk:72860] * array.c (rb_ary_first): optional argument to retrieve first n elements. * array.c (rb_ary_last): optional argument to retrieve last n elements. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* security enhancement of dl library (need test).matz2003-03-241-46/+51
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Added rb_secure(4). (Thanks to Minero Aoki)ttate2003-03-241-1/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* -Wall cleanups (removed unused vars, no 'code has no effect' warnings)michal2003-01-161-2/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dlsizeof() should handle 'S' and 's'.ttate2002-11-261-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Get rid of ineffective symbols, lines, constants and so on.ttate2002-11-071-32/+28
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fixed rb_ary2cary() to convert nil.ttate2002-11-051-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Conform to the allocation framework.ttate2002-08-041-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Include ctype.h for isdigit().ttate2002-06-111-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Get rid of STR2CSTR. (Thanks N.Nakada)ttate2002-06-111-3/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bugfix. (Thanks U.Nakamura)ttate2002-06-111-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* new platform [bccwin32] merged.H_Konishi2002-06-111-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dl.c (rb_dl_scan_callback_args): memcpy() -> cast and substitutionttate2002-06-101-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl: change the callback mechanism.ttate2002-06-091-98/+150
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* rename PtrData::alloc and Struct#alloc to malloc respectively.ttate2002-05-201-7/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add DL::DLSTACK.ttate2002-05-151-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Patch [ruby-dev:16747] (Thanks Nakada)ttate2002-04-041-8/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merge Nakada's patch and define StringValuePtr for ruby-1.6.ttate2002-04-031-32/+32
| | | | | | | CV ---------------------------------------------------------------------- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add ruby-dlttate2002-04-021-0/+655
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e