diff options
Diffstat (limited to 'bootstrap/lib/kernel')
71 files changed, 474 insertions, 0 deletions
diff --git a/bootstrap/lib/kernel/ebin/application.beam b/bootstrap/lib/kernel/ebin/application.beam Binary files differnew file mode 100644 index 0000000000..86dd678c43 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/application.beam diff --git a/bootstrap/lib/kernel/ebin/application_controller.beam b/bootstrap/lib/kernel/ebin/application_controller.beam Binary files differnew file mode 100644 index 0000000000..29177d44e1 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/application_controller.beam diff --git a/bootstrap/lib/kernel/ebin/application_master.beam b/bootstrap/lib/kernel/ebin/application_master.beam Binary files differnew file mode 100644 index 0000000000..aa902b6c02 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/application_master.beam diff --git a/bootstrap/lib/kernel/ebin/application_starter.beam b/bootstrap/lib/kernel/ebin/application_starter.beam Binary files differnew file mode 100644 index 0000000000..580be006a4 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/application_starter.beam diff --git a/bootstrap/lib/kernel/ebin/auth.beam b/bootstrap/lib/kernel/ebin/auth.beam Binary files differnew file mode 100644 index 0000000000..c547e567cd --- /dev/null +++ b/bootstrap/lib/kernel/ebin/auth.beam diff --git a/bootstrap/lib/kernel/ebin/code.beam b/bootstrap/lib/kernel/ebin/code.beam Binary files differnew file mode 100644 index 0000000000..176c79bf31 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/code.beam diff --git a/bootstrap/lib/kernel/ebin/code_server.beam b/bootstrap/lib/kernel/ebin/code_server.beam Binary files differnew file mode 100644 index 0000000000..3fb6b1f97f --- /dev/null +++ b/bootstrap/lib/kernel/ebin/code_server.beam diff --git a/bootstrap/lib/kernel/ebin/disk_log.beam b/bootstrap/lib/kernel/ebin/disk_log.beam Binary files differnew file mode 100644 index 0000000000..3d806e177d --- /dev/null +++ b/bootstrap/lib/kernel/ebin/disk_log.beam diff --git a/bootstrap/lib/kernel/ebin/disk_log_1.beam b/bootstrap/lib/kernel/ebin/disk_log_1.beam Binary files differnew file mode 100644 index 0000000000..239b1e7ee4 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/disk_log_1.beam diff --git a/bootstrap/lib/kernel/ebin/disk_log_server.beam b/bootstrap/lib/kernel/ebin/disk_log_server.beam Binary files differnew file mode 100644 index 0000000000..021b1e68a2 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/disk_log_server.beam diff --git a/bootstrap/lib/kernel/ebin/disk_log_sup.beam b/bootstrap/lib/kernel/ebin/disk_log_sup.beam Binary files differnew file mode 100644 index 0000000000..3d426eb8c3 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/disk_log_sup.beam diff --git a/bootstrap/lib/kernel/ebin/dist_ac.beam b/bootstrap/lib/kernel/ebin/dist_ac.beam Binary files differnew file mode 100644 index 0000000000..25345c80d9 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/dist_ac.beam diff --git a/bootstrap/lib/kernel/ebin/dist_util.beam b/bootstrap/lib/kernel/ebin/dist_util.beam Binary files differnew file mode 100644 index 0000000000..48497a8524 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/dist_util.beam diff --git a/bootstrap/lib/kernel/ebin/erl_boot_server.beam b/bootstrap/lib/kernel/ebin/erl_boot_server.beam Binary files differnew file mode 100644 index 0000000000..6aed4ffb1d --- /dev/null +++ b/bootstrap/lib/kernel/ebin/erl_boot_server.beam diff --git a/bootstrap/lib/kernel/ebin/erl_ddll.beam b/bootstrap/lib/kernel/ebin/erl_ddll.beam Binary files differnew file mode 100644 index 0000000000..8728cc1027 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/erl_ddll.beam diff --git a/bootstrap/lib/kernel/ebin/erl_distribution.beam b/bootstrap/lib/kernel/ebin/erl_distribution.beam Binary files differnew file mode 100644 index 0000000000..23e1b9ca19 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/erl_distribution.beam diff --git a/bootstrap/lib/kernel/ebin/erl_epmd.beam b/bootstrap/lib/kernel/ebin/erl_epmd.beam Binary files differnew file mode 100644 index 0000000000..8d1b1ac016 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/erl_epmd.beam diff --git a/bootstrap/lib/kernel/ebin/erl_reply.beam b/bootstrap/lib/kernel/ebin/erl_reply.beam Binary files differnew file mode 100644 index 0000000000..23abde7ea3 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/erl_reply.beam diff --git a/bootstrap/lib/kernel/ebin/error_handler.beam b/bootstrap/lib/kernel/ebin/error_handler.beam Binary files differnew file mode 100644 index 0000000000..42316bebf5 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/error_handler.beam diff --git a/bootstrap/lib/kernel/ebin/error_logger.beam b/bootstrap/lib/kernel/ebin/error_logger.beam Binary files differnew file mode 100644 index 0000000000..2020fce100 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/error_logger.beam diff --git a/bootstrap/lib/kernel/ebin/erts_debug.beam b/bootstrap/lib/kernel/ebin/erts_debug.beam Binary files differnew file mode 100644 index 0000000000..7f4c62ace8 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/erts_debug.beam diff --git a/bootstrap/lib/kernel/ebin/file.beam b/bootstrap/lib/kernel/ebin/file.beam Binary files differnew file mode 100644 index 0000000000..035cb98e00 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/file.beam diff --git a/bootstrap/lib/kernel/ebin/file_io_server.beam b/bootstrap/lib/kernel/ebin/file_io_server.beam Binary files differnew file mode 100644 index 0000000000..e59b45caab --- /dev/null +++ b/bootstrap/lib/kernel/ebin/file_io_server.beam diff --git a/bootstrap/lib/kernel/ebin/file_server.beam b/bootstrap/lib/kernel/ebin/file_server.beam Binary files differnew file mode 100644 index 0000000000..50e2867373 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/file_server.beam diff --git a/bootstrap/lib/kernel/ebin/gen_sctp.beam b/bootstrap/lib/kernel/ebin/gen_sctp.beam Binary files differnew file mode 100644 index 0000000000..9f0c1725c4 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/gen_sctp.beam diff --git a/bootstrap/lib/kernel/ebin/gen_tcp.beam b/bootstrap/lib/kernel/ebin/gen_tcp.beam Binary files differnew file mode 100644 index 0000000000..54ccc02e9d --- /dev/null +++ b/bootstrap/lib/kernel/ebin/gen_tcp.beam diff --git a/bootstrap/lib/kernel/ebin/gen_udp.beam b/bootstrap/lib/kernel/ebin/gen_udp.beam Binary files differnew file mode 100644 index 0000000000..8115d9f2de --- /dev/null +++ b/bootstrap/lib/kernel/ebin/gen_udp.beam diff --git a/bootstrap/lib/kernel/ebin/global.beam b/bootstrap/lib/kernel/ebin/global.beam Binary files differnew file mode 100644 index 0000000000..a458113179 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/global.beam diff --git a/bootstrap/lib/kernel/ebin/global_group.beam b/bootstrap/lib/kernel/ebin/global_group.beam Binary files differnew file mode 100644 index 0000000000..ac5d1c3318 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/global_group.beam diff --git a/bootstrap/lib/kernel/ebin/global_search.beam b/bootstrap/lib/kernel/ebin/global_search.beam Binary files differnew file mode 100644 index 0000000000..95a698ba11 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/global_search.beam diff --git a/bootstrap/lib/kernel/ebin/group.beam b/bootstrap/lib/kernel/ebin/group.beam Binary files differnew file mode 100644 index 0000000000..fb28b5d83e --- /dev/null +++ b/bootstrap/lib/kernel/ebin/group.beam diff --git a/bootstrap/lib/kernel/ebin/heart.beam b/bootstrap/lib/kernel/ebin/heart.beam Binary files differnew file mode 100644 index 0000000000..1ace850784 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/heart.beam diff --git a/bootstrap/lib/kernel/ebin/hipe_unified_loader.beam b/bootstrap/lib/kernel/ebin/hipe_unified_loader.beam Binary files differnew file mode 100644 index 0000000000..d3c41dd227 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/hipe_unified_loader.beam diff --git a/bootstrap/lib/kernel/ebin/inet.beam b/bootstrap/lib/kernel/ebin/inet.beam Binary files differnew file mode 100644 index 0000000000..f4cef6d22a --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet.beam diff --git a/bootstrap/lib/kernel/ebin/inet6_sctp.beam b/bootstrap/lib/kernel/ebin/inet6_sctp.beam Binary files differnew file mode 100644 index 0000000000..ba82ab572a --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet6_sctp.beam diff --git a/bootstrap/lib/kernel/ebin/inet6_tcp.beam b/bootstrap/lib/kernel/ebin/inet6_tcp.beam Binary files differnew file mode 100644 index 0000000000..37d381a23c --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet6_tcp.beam diff --git a/bootstrap/lib/kernel/ebin/inet6_tcp_dist.beam b/bootstrap/lib/kernel/ebin/inet6_tcp_dist.beam Binary files differnew file mode 100644 index 0000000000..3224a4364b --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet6_tcp_dist.beam diff --git a/bootstrap/lib/kernel/ebin/inet6_udp.beam b/bootstrap/lib/kernel/ebin/inet6_udp.beam Binary files differnew file mode 100644 index 0000000000..229a74076a --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet6_udp.beam diff --git a/bootstrap/lib/kernel/ebin/inet_config.beam b/bootstrap/lib/kernel/ebin/inet_config.beam Binary files differnew file mode 100644 index 0000000000..8092ed88ed --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_config.beam diff --git a/bootstrap/lib/kernel/ebin/inet_db.beam b/bootstrap/lib/kernel/ebin/inet_db.beam Binary files differnew file mode 100644 index 0000000000..fcd69f8b57 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_db.beam diff --git a/bootstrap/lib/kernel/ebin/inet_dns.beam b/bootstrap/lib/kernel/ebin/inet_dns.beam Binary files differnew file mode 100644 index 0000000000..ebeb74e0f0 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_dns.beam diff --git a/bootstrap/lib/kernel/ebin/inet_gethost_native.beam b/bootstrap/lib/kernel/ebin/inet_gethost_native.beam Binary files differnew file mode 100644 index 0000000000..089ce665e1 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_gethost_native.beam diff --git a/bootstrap/lib/kernel/ebin/inet_hosts.beam b/bootstrap/lib/kernel/ebin/inet_hosts.beam Binary files differnew file mode 100644 index 0000000000..04f3b8be5c --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_hosts.beam diff --git a/bootstrap/lib/kernel/ebin/inet_parse.beam b/bootstrap/lib/kernel/ebin/inet_parse.beam Binary files differnew file mode 100644 index 0000000000..2e37fba5b3 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_parse.beam diff --git a/bootstrap/lib/kernel/ebin/inet_res.beam b/bootstrap/lib/kernel/ebin/inet_res.beam Binary files differnew file mode 100644 index 0000000000..fbbca5afca --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_res.beam diff --git a/bootstrap/lib/kernel/ebin/inet_sctp.beam b/bootstrap/lib/kernel/ebin/inet_sctp.beam Binary files differnew file mode 100644 index 0000000000..190badd423 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_sctp.beam diff --git a/bootstrap/lib/kernel/ebin/inet_tcp.beam b/bootstrap/lib/kernel/ebin/inet_tcp.beam Binary files differnew file mode 100644 index 0000000000..f49abf5447 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_tcp.beam diff --git a/bootstrap/lib/kernel/ebin/inet_tcp_dist.beam b/bootstrap/lib/kernel/ebin/inet_tcp_dist.beam Binary files differnew file mode 100644 index 0000000000..94c08abebe --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_tcp_dist.beam diff --git a/bootstrap/lib/kernel/ebin/inet_udp.beam b/bootstrap/lib/kernel/ebin/inet_udp.beam Binary files differnew file mode 100644 index 0000000000..f05dfda304 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/inet_udp.beam diff --git a/bootstrap/lib/kernel/ebin/kernel.app b/bootstrap/lib/kernel/ebin/kernel.app new file mode 100644 index 0000000000..fae87d3189 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/kernel.app @@ -0,0 +1,120 @@ +%% +%% %CopyrightBegin% +%% +%% Copyright Ericsson AB 2008-2009. All Rights Reserved. +%% +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved online at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +%% %CopyrightEnd% +%% +%% This is an -*- erlang -*- file. +%% +{application, kernel, + [ + {description, "ERTS CXC 138 10"}, + {vsn, "2.13.4"}, + {modules, [application, + application_controller, + application_master, + application_starter, + auth, + code, + packages, + code_server, + dist_util, + erl_boot_server, + erl_distribution, + erl_reply, + error_handler, + error_logger, + file, + file_server, + file_io_server, + global, + global_group, + global_search, + group, + heart, + hipe_unified_loader, + inet6_tcp, + inet6_tcp_dist, + inet6_udp, + inet6_sctp, + inet_config, + inet_hosts, + inet_gethost_native, + inet_tcp_dist, + kernel, + kernel_config, + net, + net_adm, + net_kernel, + os, + ram_file, + rpc, + user, + user_drv, + user_sup, + disk_log, + disk_log_1, + disk_log_server, + disk_log_sup, + dist_ac, + erl_ddll, + erl_epmd, + erts_debug, + gen_tcp, + gen_udp, + gen_sctp, + inet, + inet_db, + inet_dns, + inet_parse, + inet_res, + inet_tcp, + inet_udp, + inet_sctp, + pg2, + seq_trace, + standard_error, + wrap_log_reader]}, + {registered, [application_controller, + erl_reply, + auth, + boot_server, + code_server, + disk_log_server, + disk_log_sup, + erl_prim_loader, + error_logger, + file_server_2, + fixtable_server, + global_group, + global_name_server, + heart, + init, + kernel_config, + kernel_sup, + net_kernel, + net_sup, + rex, + user, + os_server, + ddll_server, + erl_epmd, + inet_db, + pg2]}, + {applications, []}, + {env, [{error_logger, tty}]}, + {mod, {kernel, []}} + ] +}. diff --git a/bootstrap/lib/kernel/ebin/kernel.appup b/bootstrap/lib/kernel/ebin/kernel.appup new file mode 100644 index 0000000000..2d1ae9302c --- /dev/null +++ b/bootstrap/lib/kernel/ebin/kernel.appup @@ -0,0 +1 @@ +{"2.13.4",[],[]}. diff --git a/bootstrap/lib/kernel/ebin/kernel.beam b/bootstrap/lib/kernel/ebin/kernel.beam Binary files differnew file mode 100644 index 0000000000..b7fe9fa50a --- /dev/null +++ b/bootstrap/lib/kernel/ebin/kernel.beam diff --git a/bootstrap/lib/kernel/ebin/kernel_config.beam b/bootstrap/lib/kernel/ebin/kernel_config.beam Binary files differnew file mode 100644 index 0000000000..58ed8d19e6 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/kernel_config.beam diff --git a/bootstrap/lib/kernel/ebin/net.beam b/bootstrap/lib/kernel/ebin/net.beam Binary files differnew file mode 100644 index 0000000000..fbadd77eb4 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/net.beam diff --git a/bootstrap/lib/kernel/ebin/net_adm.beam b/bootstrap/lib/kernel/ebin/net_adm.beam Binary files differnew file mode 100644 index 0000000000..e5ad2e8665 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/net_adm.beam diff --git a/bootstrap/lib/kernel/ebin/net_kernel.beam b/bootstrap/lib/kernel/ebin/net_kernel.beam Binary files differnew file mode 100644 index 0000000000..cacbf28d42 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/net_kernel.beam diff --git a/bootstrap/lib/kernel/ebin/os.beam b/bootstrap/lib/kernel/ebin/os.beam Binary files differnew file mode 100644 index 0000000000..74e824234b --- /dev/null +++ b/bootstrap/lib/kernel/ebin/os.beam diff --git a/bootstrap/lib/kernel/ebin/packages.beam b/bootstrap/lib/kernel/ebin/packages.beam Binary files differnew file mode 100644 index 0000000000..b2f2f3876f --- /dev/null +++ b/bootstrap/lib/kernel/ebin/packages.beam diff --git a/bootstrap/lib/kernel/ebin/pg2.beam b/bootstrap/lib/kernel/ebin/pg2.beam Binary files differnew file mode 100644 index 0000000000..aab5132bab --- /dev/null +++ b/bootstrap/lib/kernel/ebin/pg2.beam diff --git a/bootstrap/lib/kernel/ebin/ram_file.beam b/bootstrap/lib/kernel/ebin/ram_file.beam Binary files differnew file mode 100644 index 0000000000..7f89c819b4 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/ram_file.beam diff --git a/bootstrap/lib/kernel/ebin/rpc.beam b/bootstrap/lib/kernel/ebin/rpc.beam Binary files differnew file mode 100644 index 0000000000..714bbd974c --- /dev/null +++ b/bootstrap/lib/kernel/ebin/rpc.beam diff --git a/bootstrap/lib/kernel/ebin/seq_trace.beam b/bootstrap/lib/kernel/ebin/seq_trace.beam Binary files differnew file mode 100644 index 0000000000..138dabd4bc --- /dev/null +++ b/bootstrap/lib/kernel/ebin/seq_trace.beam diff --git a/bootstrap/lib/kernel/ebin/standard_error.beam b/bootstrap/lib/kernel/ebin/standard_error.beam Binary files differnew file mode 100644 index 0000000000..bf0864d7ef --- /dev/null +++ b/bootstrap/lib/kernel/ebin/standard_error.beam diff --git a/bootstrap/lib/kernel/ebin/user.beam b/bootstrap/lib/kernel/ebin/user.beam Binary files differnew file mode 100644 index 0000000000..ed5f753bf2 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/user.beam diff --git a/bootstrap/lib/kernel/ebin/user_drv.beam b/bootstrap/lib/kernel/ebin/user_drv.beam Binary files differnew file mode 100644 index 0000000000..9ee84fbe9f --- /dev/null +++ b/bootstrap/lib/kernel/ebin/user_drv.beam diff --git a/bootstrap/lib/kernel/ebin/user_sup.beam b/bootstrap/lib/kernel/ebin/user_sup.beam Binary files differnew file mode 100644 index 0000000000..dfd2cdc2b5 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/user_sup.beam diff --git a/bootstrap/lib/kernel/ebin/wrap_log_reader.beam b/bootstrap/lib/kernel/ebin/wrap_log_reader.beam Binary files differnew file mode 100644 index 0000000000..c6c230f689 --- /dev/null +++ b/bootstrap/lib/kernel/ebin/wrap_log_reader.beam diff --git a/bootstrap/lib/kernel/egen/.gitignore b/bootstrap/lib/kernel/egen/.gitignore new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/bootstrap/lib/kernel/egen/.gitignore diff --git a/bootstrap/lib/kernel/include/file.hrl b/bootstrap/lib/kernel/include/file.hrl new file mode 100644 index 0000000000..b8ad6c8464 --- /dev/null +++ b/bootstrap/lib/kernel/include/file.hrl @@ -0,0 +1,70 @@ +%% +%% %CopyrightBegin% +%% +%% Copyright Ericsson AB 2008-2009. All Rights Reserved. +%% +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved online at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +%% %CopyrightEnd% +%% + +-ifndef(FILE_HRL_). +-define(FILE_HRL_, 1). +%%-------------------------------------------------------------------------- + +%%-type namelist() :: [char() | atom() | namelist()]. +-type namelist() :: [_]. %% XXX: GROSS OVERAPPROXIMATION -- FIX ME +-type name() :: string() | atom() | namelist(). +-type posix() :: atom(). + +-type date() :: {pos_integer(), pos_integer(), pos_integer()}. +-type time() :: {non_neg_integer(), non_neg_integer(), non_neg_integer()}. +-type date_time() :: {date(), time()}. + +%%-------------------------------------------------------------------------- + +-record(file_info, + {size :: non_neg_integer(), % Size of file in bytes. + type :: 'device' | 'directory' | 'other' | 'regular' | 'symlink', + access :: 'read' | 'write' | 'read_write' | 'none', + atime :: date_time(), % The local time the file was last read: + % {{Year, Mon, Day}, {Hour, Min, Sec}}. + mtime :: date_time(), % The local time the file was last written. + ctime :: date_time(), % The interpretation of this time field + % is dependent on operating system. + % On Unix it is the last time the file or + % or the inode was changed. On Windows, + % it is the creation time. + mode :: integer(), % File permissions. On Windows, + % the owner permissions will be + % duplicated for group and user. + links :: non_neg_integer(), % Number of links to the file (1 if the + % filesystem doesn't support links). + major_device :: integer(), % Identifies the file system (Unix), + % or the drive number (A: = 0, B: = 1) + % (Windows). + %% The following are Unix specific. + %% They are set to zero on other operating systems. + minor_device :: integer(), % Only valid for devices. + inode :: integer(), % Inode number for file. + uid :: integer(), % User id for owner. + gid :: integer()}). % Group id for owner. + + +-record(file_descriptor, + {module :: module(), % Module that handles this kind of file + data :: term()}). % Module dependent data + +-type fd() :: pid() | #file_descriptor{}. + +%%-------------------------------------------------------------------------- +-endif. diff --git a/bootstrap/lib/kernel/include/inet.hrl b/bootstrap/lib/kernel/include/inet.hrl new file mode 100644 index 0000000000..a62c8b0878 --- /dev/null +++ b/bootstrap/lib/kernel/include/inet.hrl @@ -0,0 +1,36 @@ +%% +%% %CopyrightBegin% +%% +%% Copyright Ericsson AB 2008-2009. All Rights Reserved. +%% +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved online at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +%% %CopyrightEnd% +%% +%% This record is returned by inet:gethostbyaddr/2 and inet:gethostbyname/2. + + +-type hostname() :: atom() | string(). +-type ip4_address() :: {0..255,0..255,0..255,0..255}. +-type ip6_address() :: {0..65535,0..65535,0..65535,0..65535, + 0..65535,0..65535,0..65535,0..65535}. +-type ip_address() :: ip4_address() | ip6_address(). +-type ip_port() :: 0..65535. + +-record(hostent, + { + h_name :: hostname(), %% offical name of host + h_aliases = [] :: [hostname()], %% alias list + h_addrtype :: 'inet' | 'inet6', %% host address type + h_length :: non_neg_integer(), %% length of address + h_addr_list = [] :: [ip_address()] %% list of addresses from name server + }). diff --git a/bootstrap/lib/kernel/include/inet_sctp.hrl b/bootstrap/lib/kernel/include/inet_sctp.hrl new file mode 100644 index 0000000000..34c46fee1e --- /dev/null +++ b/bootstrap/lib/kernel/include/inet_sctp.hrl @@ -0,0 +1,247 @@ +%% +%% %CopyrightBegin% +%% +%% Copyright Ericsson AB 2008-2009. All Rights Reserved. +%% +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved online at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +%% %CopyrightEnd% +%% +%% SCTP protocol contribution by Leonid Timochouk and Serge Aleynikov. +%% See also: $ERL_TOP/lib/kernel/AUTHORS +%% + +%% +%% SCTP-related records. +%% + +%% sctp_initmsg: For creating a new association (send*) and +%% SCTP_OPT_INITMSG setsockopt: +-record(sctp_initmsg, + { + num_ostreams, % 0 Use endpoint default + max_instreams, % 0 Use endpoint default + max_attempts, % 0 Use endpoint default + max_init_timeo % 0 Use endpoint default + }). + +%% sctp_sndrcvinfo: Possible "flags": Atoms, as below. Used +%% in "send*" and SCTP_OPT_DEFAULT_SEND_PARAM setsockopt: +-record(sctp_sndrcvinfo, + { + stream, % 0 Streams numbered from 0 (XXX?) + ssn, % 0, Ignored for send + flags, % [unordered, + %% addr_over, + %% abort, + %% eof] + ppid, % 0, Passed to the remote end + context, % 0, Passed to the user on error + timetolive, % 0, In msec; 0 -> no expiration + tsn, % 0, Recv only: TSN of one of the chunks + cumtsn, % 0, Only for unordered recv + assoc_id % 0 IMPORTANT! + }). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% SCTP Notification Events: +%% + +%% sctp_assoc_change: Possible valid "state" values include: +%% comm_up, comm_lost, restart, +%% shutdown_comp, cant_assoc +-record(sctp_assoc_change, + { + state = cant_assoc, + error = 0, + outbound_streams = 0, + inbound_streams = 0, + assoc_id = 0 + }). + +%% sctp_paddr_change: Peer address is a list. Possible "state" values: +%% addr_available, addr_unreachable, +%% addr_removed, addr_added, +%% addr_made_prim +-record(sctp_paddr_change, + { + addr = [0,0,0,0], + state = addr_available, + error = 0, + assoc_id = 0 + }). + +%% sctp_remote_error: Possible "data" elements are Error Causes (Atoms +%% (extending the info provided by "error" field). +-record(sctp_remote_error, + { + error = 0, + assoc_id = 0, + data = [] + }). + +%% sctp_send_failed: The "flags" is a Boolean specifying whether the +%% data have actually been transmitted over the wire. +%% "error" is similar to in #sctp_remote_error{} above. +%% "info" is the orig "*sndrcvinfo", and "data" is +%% the whole orig data chunk we attempted to send: +-record(sctp_send_failed, + { + flags = false, + error = 0, + info = #sctp_sndrcvinfo{}, + assoc_id = 0, + data = <<>> + }). + +%% sctp_shutdown_event: In this case, shut-down occurs on a particular +%% association, not on the whole socket. +-record(sctp_shutdown_event, + { + assoc_id = 0 + }). + +%% sctp_adaptation_event: "adaptation_ind" is opaque user-specified data: +-record(sctp_adaptation_event, + { + adaptation_ind = 0, + assoc_id = 0 + }). + +%% sctp_partial_delivery_event: XXX: Not clear whether it is delivered to +%% the Sender or to the Recepient (probably the +%% former). Currently, there is only 1 possible +%% value for "indication": +-record(sctp_pdapi_event, + { + indication = partial_delivery_aborted, + assoc_id = 0 + }). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% SCTP Socket Options: +%% + +-record(sctp_rtoinfo, % For SCTP_OPT_RTOINFO + { + assoc_id, + initial, % 0 + max, % 0 + min % 0 + }). + +-record(sctp_assocparams, % For SCTP_OPT_ASSOCINFO + { + assoc_id, + asocmaxrxt, % 0 + number_peer_destinations, % 0 + peer_rwnd, % 0 + local_rwnd, % 0 + cookie_life % 0 + }). + +% #sctp_initmsg{} and #sctp_sndrcvinfo{}, declared above, can also be options. + +-record(sctp_prim, % For SCTP_OPT_SET_PRIMARY_ADDR and + { + assoc_id, + addr % When set: {IP, Port} + }). + +-record(sctp_setpeerprim, % For SCTP_OPT_SET_PEER_PRIMARY_ADDR + { + assoc_id, + addr % When set: { IP, Port} + }). + +-record(sctp_setadaptation, % For SCTP_OPT_ADAPTATION_LAYER + { + adaptation_ind % 0 + }). + +-record(sctp_paddrparams, % For SCTP_OPT_PEER_ADDR_PARAMS + { + assoc_id, + address, % When set: {IP, Port} + hbinterval, % 0 + pathmaxrxt, % 0 + pathmtu, % 0 + sackdelay, % 0 + flags % [hb_enable, + %% hb_disable + %% hb_demand, + %% pmtud_enable, + %% pmtud_disable, + %% sackdelay_enable, + %% sackdelay_disable] + }). + + +% SCTP events which will be subscribed by default upon opening the socket. +% NB: "data_io_event" controls delivery of #sctp_sndrcvinfo{} ancilary +% data, not events (which are normal data) in fact; it may be needed in +% order to get the AssocID of data just received: +% +-record(sctp_event_subscribe, + { + data_io_event, % true, % Used by gen_sctp + association_event, % true, % Used by gen_sctp + address_event, % true, % Unlikely to happen... + send_failure_event, % true, % Delivered as an ERROR + peer_error_event, % true, % Delivered as an ERROR + shutdown_event, % true, % Used by gen_sctp + partial_delivery_event, % true, % Unlikely to happen... + adaptation_layer_event, % false % Probably not needed... + authentication_event % false % Not implemented yet... + }). + +-record(sctp_assoc_value, % For SCTP_OPT_DELAYED_ACK_TIME + { + assoc_id, + assoc_value % 0 + }). + + + +% sctp_paddrinfo and sctp_status are records for read-only options: +-record(sctp_paddrinfo, + { + assoc_id, + address, % When set: {IP, Port} + state, % 'inactive', Or 'active' + cwnd, % 0 + srtt, % 0, + rto, % 0 + mtu % 0 + }). + +-record(sctp_status, + { + assoc_id, + state, % empty, + % Other possible states: + % closed, cookie_wait, + % cookie_echoed, established, + % shutdown_pending, shutdow_sent, + % shutdown_received, shutdown_ack_sent; + % NOT YET IMPLEMENTED: + % bound, listen + rwnd, % 0 + unackdata, % 0, + penddata, % 0, + instrms, % 0, + outstrms, % 0, + fragmentation_point, % 0, + primary % When set: an #sctp_paddrinfo{} record + }). |