aboutsummaryrefslogtreecommitdiffstats
path: root/ext/dl/dl.c
Commit message (Collapse)AuthorAgeFilesLines
* * 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