Commit Graph

29047 Commits

Author SHA1 Message Date
Liam Fitzgerald
7bf6356d73 urbit: remove unnecessary logs 2022-02-01 20:49:31 -06:00
Liam Fitzgerald
6ee2e1626f ames: unify path format 2022-02-01 20:48:04 -06:00
Liam Fitzgerald
86bafc9838 urbit: unify path format 2022-02-01 20:47:55 -06:00
Liam Fitzgerald
f31bf964ce urbit: working notifications support 2022-02-01 20:30:50 -06:00
Liam Fitzgerald
1eaad36d4d ames: working notifications 2022-02-01 20:30:11 -06:00
Liam Fitzgerald
7205625abf wip 2022-02-01 13:25:28 -06:00
Liam Fitzgerald
225aefb4ff ames: unify disparate packet types 2022-02-01 13:05:33 -06:00
Liam Fitzgerald
1e924cfa40 urbit: move fine runtime into ames 2022-02-01 11:50:25 -06:00
fang
c72c187edd
fine: use $@(~ (cask)) consistently
It's what ends up in the packet, probably better than passing units and
converting them all over.
2022-02-01 12:02:47 +01:00
fang
4bea69bc7d
fine: verify life & signatures of packets & msgs
In addition to doing signing & verification consistently with each
other, we now handle the "no data" case sanely.

Still uses the wrong keys though.
2022-02-01 11:55:04 +01:00
fang
b42dc477c5
fine: move into per-event core
This is an obviously more ergonomic factoring.
2022-01-28 23:54:01 +01:00
fang
fb72b7df7d
fine: set receiver life in request packet 2022-01-28 23:11:27 +01:00
fang
709dd75d74
fine: track pending requests for unknown peers 2022-01-28 23:09:50 +01:00
Liam Fitzgerald
3ec30d3e57 ames: revamp scry cache
Update scry cache to be a map of [path num] -> fragment
2022-01-28 15:18:16 -06:00
Liam Fitzgerald
10e617d4ab fine: prevent null ptr deref in _ames_pend_free 2022-01-28 14:09:42 -06:00
fang
769d10fdd4
fine: use keys from ames state instead of jael 2022-01-28 14:30:59 +01:00
Liam Fitzgerald
d5040e7eae fine: correctly decode lane for the non-galaxy case 2022-01-27 15:36:40 -06:00
Liam Fitzgerald
64ab395fd0 ames: cache scry packets 2022-01-27 14:57:15 -06:00
fang
4c045a9c4f
ames, fine: minimal compilable unification 2022-01-27 14:32:49 +01:00
Liam Fitzgerald
00b7d2c4d4 ames: improve error handling 2022-01-26 22:53:31 -06:00
Liam Fitzgerald
3a6b2352d0 ames: better protect against malicious packets 2022-01-26 22:38:26 -06:00
Liam Fitzgerald
2f78cf7e01 ames: #freepackets 2022-01-26 22:38:26 -06:00
Liam Fitzgerald
c816d43784 fine: remove unnecessary from in %purr 2022-01-26 22:38:26 -06:00
Liam Fitzgerald
f0aa946f57 ames: remove logging 2022-01-26 22:38:26 -06:00
Liam Fitzgerald
90cdc2de6a wip 2022-01-26 22:38:26 -06:00
Liam Fitzgerald
c808657e2a wip 2022-01-26 22:38:18 -06:00
fang
d4a0f1d901
fine: correctly calculate request body size
This had missed getting updated for byte-logic.
2022-01-26 20:03:03 +01:00
fang
af8fd67472
fine: scry using the roof, not .^ 2022-01-25 21:27:52 +01:00
fang
793c31d7f9
fine: properly sign individual packets 2022-01-24 23:51:22 +01:00
fang
ff53ae5e66
fine: supply lane where needed
Still somewhat wip, this might not be the lane behavior we want for
real.
2022-01-24 23:26:02 +01:00
fang
03b73b85bf
fine: set and handle the response bit correctly 2022-01-24 23:06:06 +01:00
fang
176aa3a45e
lull: stop hardcoding ames bit in +encode-packet 2022-01-24 21:38:55 +01:00
fang
2279764eff
fine: include header & prelude with %hoot 2022-01-24 21:01:46 +01:00
fang
b606dea970
fine: work on bytes instead of bits 2022-01-24 21:01:09 +01:00
fang
92aa604be0
fine: factor out the fetching of scry results
And use it to implement task-ways request handling, which we'll probably
remove in favor of peek-ways handling.
2022-01-21 14:59:54 +01:00
fang
2d0a6f160b
fine: reuse packet en/decoding logic from ames
Also adds some more of the core logic, but still wip.
2022-01-20 20:36:38 +01:00
fang
dd4eb87f42
ames: move packet en/decoding into lull
By moving this behavior for packets with ames-style headers into lull,
other vanes that want to do protocols in similar style (like the upcoming
%fine vane) can reuse the logic here.

Note that we parameterize the main en- and decoding functions, so that
we may pass in the "is ames" flag and protocol versions as appropriate
to the context.
2022-01-20 01:59:43 +01:00
fang
3cb3421657
Merge branch 'next/arvo' into m/scry-vane 2022-01-19 19:28:09 +01:00
fang
207dc91c8c
fine: wip, add packet deserializing logic
Also stub our some flows, add todos, etc. Bit of a mess, follow-up soon.
2022-01-19 12:35:54 +01:00
Liam Fitzgerald
d1c97ef7e7 urbit: add ames prelude struct 2022-01-14 16:46:56 -06:00
fang
fa9c4016aa
fine: work around compiler bug 2022-01-14 13:51:02 +01:00
fang
355f05753f
fine: remote scry
Implements a WIP version of %fine, the remote scry vane. Plenty of work
remains to be done here, marked by TODOs and REVIEWs.
2022-01-14 00:22:56 +01:00
Liam Fitzgerald
d5616fd88f urbit: fix positioning of libuv handler 2022-01-10 10:56:23 -06:00
Liam Fitzgerald
81395eea3f urbit: genericise packet handling
This commit genericises the packet handling to allow for better code
sharing between fine and ames. The ames packets, requests and responses
are now stored in tagged union u3_pend which contains members that
should be filled out as the packet makes its way to the network
2022-01-10 09:30:55 -06:00
Liam Fitzgerald
a76da1e5da urbit: add stubbed flow for remote scry 2022-01-07 13:06:50 -06:00
Joe Bryan
1657c548cc Merge branch 'master' into next/arvo
* master:
  [nix] track nixos-21.11 branch whenever niv updates, bump to include qemu-in-virtualization fix
  webterm: v1.0.0
  herm: permission checks
  herm: avoid trailing empty path segments
  pmnsh: update secp256k1 configure flags
  secp256k1: use nixpkgs provided secp256k1 and add to sources-pmnsh
  webterm: remove border, let term live in page
  theme: cleaning up a few mismatches
  webterm: handle old-style blits and belts
  build: correct lmdb static builds
  build: explicitly override h2o build platforms to support darwin
  ci: upgrade cachix/install-nix-action from v13 -> v16
  build: remove haskell related nix code and haskell.nix dependency
  webterm: update imports
  @urbit/api: move term types
  webterm: fix broken imports
  webterm: update package name for lerna
  webterm: commit missing api files
  webterm: backport
2021-12-17 23:39:04 -05:00
Joe Bryan
15148c72bf Merge branch 'master' into next/vere
* master:
  [nix] track nixos-21.11 branch whenever niv updates, bump to include qemu-in-virtualization fix
  webterm: v1.0.0
  herm: permission checks
  herm: avoid trailing empty path segments
  pmnsh: update secp256k1 configure flags
  secp256k1: use nixpkgs provided secp256k1 and add to sources-pmnsh
  webterm: remove border, let term live in page
  theme: cleaning up a few mismatches
  webterm: handle old-style blits and belts
  build: correct lmdb static builds
  build: explicitly override h2o build platforms to support darwin
  ci: upgrade cachix/install-nix-action from v13 -> v16
  build: remove haskell related nix code and haskell.nix dependency
  webterm: update imports
  @urbit/api: move term types
  webterm: fix broken imports
  webterm: update package name for lerna
  webterm: commit missing api files
  webterm: backport
2021-12-17 23:38:22 -05:00
Joe Bryan
663934b5cf
Merge pull request #5478 from urbit/bh/remove-haskell-nix
build: remove urbit-king haskell releases and haskell.nix dependency
2021-12-17 20:36:21 -08:00
Joe Bryan
eeac4e5489
Merge pull request #5195 from urbit/pp/leaks2
king: fix several more space leaks
2021-12-17 20:18:42 -08:00
Joe Bryan
c4cf6bf655
Merge pull request #5000 from ryjm/jm/merciful-king
king: don't kill on C-d
2021-12-17 20:17:52 -08:00