@ai-ecoverse/slicc-kernel 1.154.3 → 1.156.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,4 @@
1
+ import { KernelError } from '../fd-table.js';
1
2
  import { type TlsCipher } from './tls-ciphers.js';
2
3
  import { type TlsEngine, type TlsLeaf, type TlsSession, type TlsStore } from './tls-engine.js';
3
4
  import type { UplinkConn } from './uplink.js';
@@ -35,6 +36,7 @@ export interface TlsClientOptions {
35
36
  }
36
37
  export declare function clientFlags(o: TlsClientOptions): number;
37
38
  export declare function openSession(o: TlsClientOptions): TlsSession;
39
+ export declare function recordRefusal(opening: Uint8Array): KernelError | undefined;
38
40
  export declare function verdictOf(o: TlsClientOptions, session: TlsSession): boolean;
39
41
  export declare function tlsClient(conn: UplinkConn, o: TlsClientOptions, taken?: Uint8Array): Promise<{
40
42
  conn: UplinkConn;
@@ -34,6 +34,9 @@ export type SocketSyscall = {
34
34
  op: 'sock-shutdown';
35
35
  fd: number;
36
36
  how: number;
37
+ } | {
38
+ op: 'sock-reset';
39
+ fd: number;
37
40
  } | {
38
41
  op: 'sock-name';
39
42
  fd: number;
@@ -34,6 +34,7 @@ export declare class Changes {
34
34
  interface Link {
35
35
  rx: KernelPipe;
36
36
  tx: KernelPipe;
37
+ peer?: KernelSocket;
37
38
  }
38
39
  export interface PeerCred {
39
40
  pid: number;
@@ -52,6 +53,8 @@ export declare class KernelSocket implements KernelFile {
52
53
  private dialing;
53
54
  private failed;
54
55
  private reset;
56
+ private abortive;
57
+ private refused;
55
58
  local: SockAddr | undefined;
56
59
  peer: SockAddr | undefined;
57
60
  peerCred: PeerCred | undefined;
@@ -111,6 +114,9 @@ export declare class KernelSocket implements KernelFile {
111
114
  shutdown(how: number): void;
112
115
  getOption(level: number, name: number): number;
113
116
  setOption(level: number, name: number, value: number): void;
117
+ resetOnClose(): void;
118
+ private abort;
119
+ private resetBy;
114
120
  close(): void;
115
121
  static pair(net: LoopbackNet, domain: SocketDomain, cred?: PeerCred): [KernelSocket, KernelSocket];
116
122
  }
@@ -84,6 +84,7 @@ export interface JsConnection {
84
84
  readonly readable: ReadableStream<Uint8Array>;
85
85
  readonly writable: WritableStream<Uint8Array>;
86
86
  close(): Promise<void>;
87
+ reset(): Promise<void>;
87
88
  }
88
89
  export interface JsListener extends AsyncIterable<JsConnection> {
89
90
  readonly fd: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-ecoverse/slicc-kernel",
3
- "version": "1.154.3",
3
+ "version": "1.156.0",
4
4
  "description": "SLICC's wasm-realm kernel: run Emscripten programs in the browser against OPFS, with fork, spawn, pipes and waitpid",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",