KolibriOS kernel
dll.inc File Reference

Functions

void get_notify (dword p_ev)
 
void srv_handler (dword ioctl)
 
void get_service (dword sz_name)
 
void reg_service_ex (dword name, dword handler, dword srvsize)
 
void get_proc (dword exp, dword sz_name)
 
void get_coff_sym (dword pSym, dword count, dword sz_sym)
 
void get_fileinfo (dword file_name, dword info)
 
void read_file (dword file_name, dword buffer, dword off, dword bytes)
 
void load_file (dword file_name)
 Allocate kernel memory and loads the specified file. More...
 
void load_file_umode (dword file_name)
 
void get_proc_ex (dword proc_name, dword imports)
 
void fix_coff_symbols (dword sec, dword symbols, dword sym_count, dword strings, dword imports)
 
void fix_coff_relocs (dword coff, dword sym, dword delta)
 
void rebase_coff (dword coff, dword sym, dword delta)
 
void load_library (dword file_name, dword encoding)
 

Variables

label srv_handlerEx
 
handle restore
 
label reg_service
 
label reg_usb_driver
 
label stop_all_services
 used in shutdown system More...
 
dd cmd
 
dd offset
 
dd count
 
dd buff
 
dd name
 
dd attr
 
dd flags
 
dd cr_time
 
dd cr_date
 
dd acc_time
 
dd acc_date
 
dd mod_time
 
dd mod_date
 
dd file_size
 
dd file
 
dd file2
 
dd km_file
 
dd um_file
 
MUTEX unpack_mutex
 
dd retval
 
dd n_sec
 
label coff_get_align
 in: edx -> COFF_SECTION struct out: eax = alignment as mask for bits to drop More...
 
dd fullname
 
rb fileinfo
 
dd coff
 
dd img_base
 
label init_dlls_in_thread
 initialize [APPDATA.dlls_list_ptr] for given thread DLL is per-process object, so APPDATA.dlls_list_ptr must be kept in sync for all threads of one process. out: eax = APPDATA.dlls_list_ptr if all is OK, NULL if memory allocation failed More...
 
label dereference_dll
 in: eax = number of references to delete, esi -> DLLDESCR struc More...
 
label destroy_hdll
 
label destroy_all_hdlls
 ecx -> APPDATA for slot, esi = dlls_list_ptr More...
 
label create_kernel_object
 
label destroy_kernel_object
 
label create_object
 
label destroy_object
 

Function Documentation

◆ fix_coff_relocs()

void fix_coff_relocs ( dword  coff,
dword  sym,
dword  delta 
)

◆ fix_coff_symbols()

void fix_coff_symbols ( dword  sec,
dword  symbols,
dword  sym_count,
dword  strings,
dword  imports 
)

◆ get_coff_sym()

void get_coff_sym ( dword  pSym,
dword  count,
dword  sz_sym 
)

◆ get_fileinfo()

void get_fileinfo ( dword  file_name,
dword  info 
)

◆ get_notify()

void get_notify ( dword  p_ev)

◆ get_proc()

void get_proc ( dword  exp,
dword  sz_name 
)

◆ get_proc_ex()

void get_proc_ex ( dword  proc_name,
dword  imports 
)

◆ get_service()

void get_service ( dword  sz_name)

◆ load_file()

void load_file ( dword  file_name)

Allocate kernel memory and loads the specified file.

Parameters
file_namePath to file
Returns
File image in kernel memory in eax and size of file in ebx
Warning
You must call kernel_free() to delete each file loaded by the load_file() function
Source
core/dll.inc:381

◆ load_file_umode()

void load_file_umode ( dword  file_name)

◆ load_library()

void load_library ( dword  file_name,
dword  encoding 
)

◆ read_file()

void read_file ( dword  file_name,
dword  buffer,
dword  off,
dword  bytes 
)

◆ rebase_coff()

void rebase_coff ( dword  coff,
dword  sym,
dword  delta 
)

◆ reg_service_ex()

void reg_service_ex ( dword  name,
dword  handler,
dword  srvsize 
)

◆ srv_handler()

void srv_handler ( dword  ioctl)

Variable Documentation

◆ acc_date

dd acc_date
Initial value
?
Source
core/dll.inc:388
Initial value
?
Source
core/dll.inc:493

◆ acc_time

dd acc_time
Initial value
?
Source
core/dll.inc:387
Initial value
?
Source
core/dll.inc:492

◆ attr

dd attr
Initial value
?
Source
core/dll.inc:383
Initial value
?
Source
core/dll.inc:488

◆ buff

dd buff
Initial value
?
Source
core/dll.inc:310
Initial value
?
Source
core/dll.inc:346
Initial value
?
Source
core/taskman.inc:574

◆ cmd

dd cmd
Initial value
?
Source
core/dll.inc:306
Initial value
?
Source
core/dll.inc:342

◆ coff

dd coff
Initial value
?
Source
core/dll.inc:846

◆ coff_get_align

label coff_get_align

in: edx -> COFF_SECTION struct out: eax = alignment as mask for bits to drop

Source
core/dll.inc:820

◆ count

dd count
Initial value
?
Source
core/dll.inc:309
Initial value
?
Source
core/dll.inc:345
Initial value
?
Source
core/memory.inc:764

◆ cr_date

dd cr_date
Initial value
?
Source
core/dll.inc:386
Initial value
?
Source
core/dll.inc:491

◆ cr_time

dd cr_time
Initial value
?
Source
core/dll.inc:385
Initial value
?
Source
core/dll.inc:490

◆ create_kernel_object

label create_kernel_object

◆ create_object

label create_object

◆ dereference_dll

label dereference_dll

in: eax = number of references to delete, esi -> DLLDESCR struc

Source
core/dll.inc:1251

◆ destroy_all_hdlls

label destroy_all_hdlls

ecx -> APPDATA for slot, esi = dlls_list_ptr

Source
core/dll.inc:1285

◆ destroy_hdll

label destroy_hdll

◆ destroy_kernel_object

label destroy_kernel_object

◆ destroy_object

label destroy_object

◆ file

dd file
Initial value
?
Source
core/dll.inc:393

◆ file2

dd file2
Initial value
?
Source
core/dll.inc:394

◆ file_size

dd file_size
Initial value
?
Source
core/dll.inc:391
Initial value
?
Source
core/dll.inc:496

◆ fileinfo

rb fileinfo
Initial value
40
Source
core/dll.inc:845

◆ flags

dd flags
Initial value
?
Source
core/dll.inc:384
Initial value
?
Source
core/dll.inc:489
Initial value
?
Source
core/taskman.inc:642

◆ fullname

dd fullname
Initial value
?
Source
core/dll.inc:844

◆ img_base

dd img_base
Initial value
?
Source
core/dll.inc:847

◆ init_dlls_in_thread

label init_dlls_in_thread

initialize [APPDATA.dlls_list_ptr] for given thread DLL is per-process object, so APPDATA.dlls_list_ptr must be kept in sync for all threads of one process. out: eax = APPDATA.dlls_list_ptr if all is OK, NULL if memory allocation failed

Source
core/dll.inc:1231

◆ km_file

dd km_file
Initial value
?
Source
core/dll.inc:498

◆ mod_date

dd mod_date
Initial value
?
Source
core/dll.inc:390
Initial value
?
Source
core/dll.inc:495

◆ mod_time

dd mod_time
Initial value
?
Source
core/dll.inc:389
Initial value
?
Source
core/dll.inc:494

◆ n_sec

dd n_sec
Initial value
?
Source
core/dll.inc:729
Initial value
?
Source
core/dll.inc:784

◆ name

dd name
Initial value
?
Source
core/dll.inc:312
Initial value
?
Source
core/dll.inc:348

◆ offset

dd offset
Initial value
?
Source
core/dll.inc:307
Initial value
?
Source
core/dll.inc:343
Initial value
?
Source
core/taskman.inc:576

◆ reg_service

label reg_service

◆ reg_usb_driver

label reg_usb_driver

◆ restore

_process restore
Initial value
Source
core/dll.inc:108
Initial value
Source
core/dll.inc:109
Initial value
Source
core/dll.inc:110
Initial value
Source
core/dll.inc:111
Initial value
Source
core/dll.inc:112
Initial value
Source
core/dll.inc:113
Initial value
Source
core/sys32.inc:391
Initial value
Source
core/sys32.inc:392
Initial value
Source
core/sys32.inc:393
Initial value
Source
core/sys32.inc:394
Initial value
Source
core/sys32.inc:395
Initial value
Source
core/sys32.inc:396
Initial value
Source
core/sys32.inc:397
Initial value
Source
core/sys32.inc:398
Initial value
Source
core/sys32.inc:399
Initial value
Source
core/sys32.inc:400
Initial value
Source
core/sys32.inc:401
Initial value
Source
core/sys32.inc:402
Initial value
Source
core/sys32.inc:828
Initial value
Source
core/sys32.inc:829

◆ retval

dd retval
Initial value
?
Source
core/dll.inc:666

◆ srv_handlerEx

label srv_handlerEx

◆ stop_all_services

label stop_all_services

used in shutdown system

Source
core/dll.inc:233

◆ um_file

dd um_file
Initial value
?
Source
core/dll.inc:499

◆ unpack_mutex

MUTEX unpack_mutex
Initial value
Source
core/dll.inc:631