Commit Graph

12628 Commits

Author SHA1 Message Date
Jōshin
9172b3dfe8
unix: c3_ 2022-01-31 13:52:44 -06:00
Jōshin
6b5361d7df
unix: code review feedback 2022-01-31 13:49:51 -06:00
Jōshin
ca1ed3d7a1
vere: remove 'new' from header comments
'New' is relative; some of these subsystems were 'new' in 2015.
2022-01-31 13:21:50 -06:00
Jōshin
b8277be5b2
vere: remove walk, move save to unix 2022-01-31 13:19:32 -06:00
Jōshin
7fc9db8c9a
unix: reformat comments 2022-01-31 12:28:45 -06:00
Jōshin
443315f401
vere: rename u3_unix_{safe,cane} 2022-01-31 12:25:42 -06:00
Jōshin
60f1a44910
unix: remove extra layer of conditional 2022-01-31 11:14:54 -06:00
Jōshin
0d9264ea1c
unix: don't require that string is non-empty
Fixes an assert failure if you try to commit a file named `~.`.
2022-01-31 11:13:57 -06:00
Jōshin
2a5baa9e3f
main: simplify _main_repath 2022-01-31 10:59:23 -06:00
Jōshin
b5a49a159f
unix: use (sane %ta) out of arvo 2022-01-31 10:43:56 -06:00
Jōshin
19002c72dd
compat: mingw realpath 2022-01-31 10:24:11 -06:00
Jōshin
c041080729
unix: bugfixes
- Don't test for '\\' in u3_unix_safe. Doing otherwise was crashing vere
  when unmounting a mountpoint that had come to contain a file with '\\'
  in its path. This might mean you can do bad things on Windows if other
  checks fail.

- Ignore any files whose names do not pass `(sane %ta)` when scanning
  directories. (This reimplements `(sane %ta)` in C. Perhaps it should
  instead call `(sane %ta)`.)

- Use '~.' rather than '~' for the escape. We ignore files that end in
  '~', probably for vim backup-file reasons.

- Add a _unix_string_to_knot missed in the prior conversion.
2022-01-31 10:00:35 -06:00
Jōshin
00f7407a5e
unix: escape overloaded paths
unix cannot represent the file with empty name, and it has special
mappings for '.' and '..'. as these three are all valid arvo `+knot`s,
we need to escape them if we come across them.

the method we use to escape is: if we encounter any of those three
`+knot`s, or any `+knot` starting with '~', we prepend its filename with
a '~'. and when going from filename to `+knot`, we do the reverse; i.e.
we ignore a '~' if it is the first character of a filename.

the current implementation just crashes if it encounters a `+knot`
containing '/' or '\\', neither of which are valid under the current
implementation of `@ta` (which only accepts numbers, lowercase, '-',
'~', '.', and '_'.)

it also crashes if it encounters a file containing '\\'. something else
should happen here; most likely vere should just ignore the file.
2022-01-31 10:00:35 -06:00
Jōshin
d4b4504ae4
vere: move lockfile from unix to disk 2022-01-30 19:26:45 -06:00
Jōshin
a4b40d104c
noun: noop, C 'types' being what they are... 2022-01-30 13:09:20 -06:00
Jōshin
0248f57f0b
unix: comment format 2022-01-29 23:24:12 -06:00
Jōshin
3d36582fda
unix: whitespace cleanup 2022-01-29 23:24:12 -06:00
Jōshin
c8f8ced249
main: canonicalize paths from command line 2022-01-29 23:24:11 -06:00
Jōshin
a74d08f489
vere: extra fs calls 2022-01-29 23:24:11 -06:00
Jōshin
741e1d3e8b
vere: replace fs calls with asserting counterparts 2022-01-29 23:24:11 -06:00
Jōshin
d2fc42c3ea
unix: asserting wrappers around unix fs calls 2022-01-29 23:24:11 -06:00
Jōshin
2e53930d5a
Merge branch 'master' into next/vere 2022-01-28 21:23:00 -08:00
Hunter Miller
874d380ad5 groups: updating version 2022-01-28 20:30:13 -06:00
Hunter Miller
dc188d6059 groups: fixing bad glob 2022-01-28 20:29:34 -06:00
Hunter Miller
de747b343f join: don't show modal if no kind 2022-01-28 19:51:35 -06:00
Hunter Miller
509bd2b11a groups: updating glob 2022-01-28 19:39:48 -06:00
Hunter Miller
0d93cf9cff join: handling kind safer and join links more consistent 2022-01-28 19:33:42 -06:00
drbeefsupreme
f67962b803
helm: cleanup +poke-rekey to match #5522 2022-01-28 12:23:36 -05:00
Peter McEvoy
c1441e9cd0 u3: document page tracking subtleties when taking snapshot 2022-01-27 14:05:29 -08:00
Joe Bryan
4087699172 u3: fix snapshot corruption by preemptively dirtying the loom 2022-01-27 14:51:25 -05:00
Hunter Miller
c07bcd6e03 Merge branch 'next/groups' 2022-01-27 10:25:14 -06:00
Hunter Miller
88e956df01 Merge branch 'next/landscape' 2022-01-27 10:24:04 -06:00
fang
d7d15115ee
Merge branch 'next/webterm' 2022-01-27 00:30:17 +01:00
fang
192f2cd19d
webterm: v1.0.1 2022-01-27 00:29:24 +01:00
drbeefsupreme
b5f299c02d
helm: fix |rekey to work with multikey files 2022-01-26 16:29:14 -05:00
Philip Monk
34bcd2ffcd
Merge pull request #5495 from urbit/m/whos-who
helm: bind /who.json
2022-01-26 12:47:47 -07:00
Hunter Miller
79f0fd98dd chat-resource: fixing admin detection 2022-01-26 10:29:04 -06:00
fang
5928ca8747
vere: do not use mainnet-proxy for galaxy booting
Fallback to the default happens in dawn.c, which correctly points to
roller.urbit.org, an endpoint that matches its request/response logic.
Continuing to use an Ethereum endpoint instead of an L2 one will just result
in 400s, since they don't speak the same language.
2022-01-26 17:17:37 +01:00
Hunter Miller
5426f2aff8 Merge branch 'next/groups' into hm/fix-group-dm-initial-load 2022-01-25 11:23:30 -06:00
Hunter Miller
86d9aba7fb garden,landscape: updating globs and versions 2022-01-24 16:14:26 -06:00
Liam Fitzgerald
14ca87c43c dm-hook: mutate screened before giving fact
Fixes an issue where the subscription update would contain stale data
2022-01-24 15:18:52 -06:00
fang
a51ac14833
webterm: improve readability of char under cursor
Make sure it's the opposite of the cursor color.
2022-01-24 14:33:25 +01:00
Jōshin
13bdfe26aa
build: arm64 architecture
This seems to be what nix settled on.

(As of now, I can build urbit on M1 Mac with stock nix. nix-build -A
urbit hangs for some reason, but nix-shell ./configure && make works.)
2022-01-23 21:22:13 -08:00
Liam Fitzgerald
c5c7946e5a
Merge pull request #5553 from urbit/la/proxy-sigs
graph-push-hook: proxy add and remove signatures across the network
2022-01-20 16:52:22 -06:00
Logan Allen
bb953945f8 graph-push-hook: proxy add and remove signatures across the network 2022-01-20 21:58:00 +00:00
yosoyubik
0c9fc76b93 eth-watcher: fix zoom-margin to account for reorgs
The previous value—used for testing—didn't consider
block reorgs, which meant that if we zoom to the latest
block that has no transactions, but that gets later replaced
by a 1-block reorg that does have a transaction, we'll miss it,
making our Azimuth state incomplete.

To fix it, we rewind the Azimuth state to the contents of the snapshot,
and then start retrieving logs from the latest one we have.
2022-01-19 17:41:05 +01:00
Hunter Miller
09f71e504b dms: don't load if pending 2022-01-18 14:38:45 -06:00
yosoyubik
3d943ec201 ames: ignore missing peer-state on-publ-sponsor 2022-01-18 20:34:32 +01:00
Hunter Miller
3bbaf6de80 join: making sure group is in state and retaining join request state 2022-01-13 16:15:38 -06:00
Hunter Miller
ed3b19cd0f sidebarlistheader: fixing potential undefined ref 2022-01-13 16:14:22 -06:00
fang
7be6950fe5
Merge branch 'm/helm-perms' into next/arvo 2022-01-13 00:36:22 +01:00
fang
b9491bcbb8
Merge branch 'master' into next/arvo 2022-01-13 00:36:07 +01:00
fang
0bc1f49f0f
drum: only process pokes from the local ship
No mark files exist for any of the drum marks, so trying to poke remote drums
would fail anyway, but relying on the mark system in that way seems a bit
fragile, so we add an explicit permission check.
2022-01-13 00:24:31 +01:00
fang
bde8c0b04a
helm: only process pokes from the local ship
No mark files exist for any of the helm marks (except `%helm-hi`), so trying to
poke remote helms would fail anyway, but relying on the mark system in that way
seems a bit fragile, so we add an explicit permission check.
2022-01-12 13:28:44 +01:00
jose
f158ebe312
Merge pull request #5532 from urbit/azimuth/jael-fix
jael: give new private key to subscribers on %keys new-event
2022-01-12 12:47:21 +01:00
yosoyubik
432d9674f5 jael: don't put conflicting this-su in the subject 2022-01-12 11:01:06 +01:00
Hunter Miller
c13ec5a698 notification-redirect: send to already joined chat instead of showing join modal 2022-01-11 19:36:06 -06:00
Hunter Miller
1ddd38e82c join: removing unused props, fixing invite 'kind' for proper linking 2022-01-11 19:32:51 -06:00
Hunter Miller
5fba433415 hark-update: fixing desk check 2022-01-11 19:30:53 -06:00
Hunter Miller
846502ef51 Merge branch 'next/groups' into hm/remove-dm-delete 2022-01-11 18:16:29 -06:00
Hunter Miller
4ee680807f Merge branch 'master' into next/groups 2022-01-11 18:15:25 -06:00
Hunter Miller
8efc0a9006 dms: hiding delete for dms and hiding dropdown if only reply 2022-01-11 16:43:57 -06:00
Hunter Miller
f6db32e669 webpack: fixing refresh in dev 2022-01-11 16:43:02 -06:00
Hunter Miller
158dfc0dec interface: fixing type errors 2022-01-11 16:42:38 -06:00
Liam Fitzgerald
6c1ce45815
Merge pull request #5489 from urbit/lf/fix-revoke
groups: fix permission handling
2022-01-10 11:11:12 -06:00
Liam Fitzgerald
f1f57abec0
Merge pull request #5485 from urbit/lf/recency-improvements
landscape: better leap searching
2022-01-10 11:10:51 -06:00
Liam Fitzgerald
b4512bf1a0
Merge pull request #5490 from urbit/lf/groups-grabbag
groups: misc frontend fixes
2022-01-10 11:08:14 -06:00
Liam Fitzgerald
4009f9d350
Merge pull request #5525 from urbit/lf/fix-dm-loading
DmResource: reload DM if cleared by kick
2022-01-10 11:07:25 -06:00
Liam Fitzgerald
a1aee5d2c8
Merge pull request #5519 from urbit/lf/fix-admin-remove
graph-validator-chat: allow admin removal of any message
2022-01-10 11:06:58 -06:00
Jōshin
ce05e562ed
test: schnorr bounds checking 2022-01-09 05:49:47 +00:00
Jōshin
71c59737d8
zuse: boundary assertions for schnorr
Just assert on mis-sized values.
2022-01-09 05:31:36 +00:00
Jōshin
4591fa272e
zuse: schnorr test cases
These are from:
<https://github.com/bitcoin/bips/blob/master/bip-0340/test-vectors.csv>
2022-01-09 05:28:22 +00:00
yosoyubik
fccf99e0a6 jael: refactor new-event for %keys diff
this also adds a %rerun %poke to /app/azimuth
2022-01-08 19:28:11 +01:00
yosoyubik
8535563de6 jael: give private key to subscribers on keys diff
Triggering this event has been added to /app/azimuth's +on-load
2022-01-08 09:48:28 +01:00
Peter McEvoy
db1b8d8239 vere: use hex literal for database size passed to u3_lmdb_init() 2022-01-07 14:44:08 -08:00
yosoyubik
583d5f5063 azimuth: process snapshot on-load 2022-01-07 18:13:51 +01:00
yosoyubik
1950736518 azimuth: update snapshot at block 13.958.653 2022-01-07 17:31:49 +01:00
fang
afea2edc59
webterm: improve selection look & feel 2022-01-07 14:02:28 +01:00
Peter McEvoy
e4616828c1
u3: disable page tracking on inner roads (#5477)
* u3: disable page tracking on inner roads

* u3: optimize reinstatement of page tracking

* u3: replace U3_OS_Native* macros with static global variable

* u3: move U3_OS_NativePageWords global variable into portable.h

* Revert 2ee26990c2, 16c52a4b73, d7bfe37ff7, 4a78133991

Revert "u3: move U3_OS_NativePageWords global variable into portable.h"
This reverts commit 2ee26990c26a8af15a0234fa23dd041b13aa02de.

Revert "u3: replace U3_OS_Native* macros with static global variable"
This reverts commit 16c52a4b73f35cfe54165ad9232110c2f741d223.

Revert "u3: optimize reinstatement of page tracking"
This reverts commit d7bfe37ff768ecfc0055d71076c67a4df4aff621.

Revert "u3: disable page tracking on inner roads"
This reverts commit 4a781339914b2c47772107d8654a27c40aef7ddf.

* u3: remove u3e_dirty()

* u3: use sizeof() in u3e_foul()

* u3: disable inner road page tracking by defaulting to dirty pages

* u3: read and write-protect on per-page basis in _ce_image_blit()

* u3: remove _ce_patch_junk_page()

* u3: increment ptr_w in _ce_image_blit()
2022-01-06 16:23:19 -08:00
Hunter Miller
4834ec59a2 Merge branch 'master' into next/landscape 2022-01-06 16:25:04 -06:00
Liam Fitzgerald
a42b344559 DmResource: reload DM if cleared by kick 2022-01-06 13:55:22 -06:00
yosoyubik
8df443bc46 azimuth: remove eth-logs 2022-01-06 16:43:28 +01:00
Hunter Miller
318cb9f00e Merge branch 'master' into next/landscape 2022-01-05 16:59:32 -06:00
Liam Fitzgerald
05de25a22f graph-validator-chat: allow admin removal of any message 2022-01-04 15:11:24 -06:00
Jōshin
6fe108f538
vere: schnorr jets
C side of the work at jo/secp-arvo. Validated against these test vectors
prior to setting `ice = c3y`:

<https://github.com/bitcoin/bips/blob/master/bip-0340/test-vectors.csv>

I didn't touch any of the core hashes; perhaps they should be updated.
2021-12-30 22:58:31 +00:00
Jōshin
40fbd16036
zuse: schnorr address 2021-12-30 05:46:44 +00:00
Jōshin
cb5983c6ae
zuse: schnorr jet hints 2021-12-30 04:25:31 +00:00
Jōshin
5d98ecfe2f
urcrypt: first pass at schnorr signatures 2021-12-30 04:16:37 +00:00
Jōshin
f93457ce9c
zuse: style 2021-12-30 04:14:25 +00:00
Jōshin
0fb3dd5ed0
zuse: cleanup 2021-12-30 00:47:11 +00:00
Jōshin
022ec2867d
zuse: banish byte twiddling from schnorr
Actually it's just hidden in +sha-256l:sha now.
2021-12-30 00:42:47 +00:00
Jōshin
57ef17fc91
zuse: signatures were backwards 2021-12-29 23:58:31 +00:00
Jōshin
09294d79bc
zuse: unused ffra 2021-12-29 23:50:16 +00:00
Jōshin
4c6187787f
zuse: remove redundant flips on sig 2021-12-29 23:50:16 +00:00
Jōshin
4f1269b205
zuse: cleanup in schnorr 2021-12-29 23:50:15 +00:00
Jōshin
b296f3912e
zuse: verify:schnorr works 2021-12-29 23:50:15 +00:00
Jōshin
ab4b735471
zuse: sign:schnorr basically done
Schnorr's choice of big-endian encoding commits us to some degree of
byte twiddling; try to make this fairly seamless.
2021-12-29 23:49:54 +00:00
Jōshin
f39421c97b
zuse: flip bytes in sig
gross!
2021-12-29 19:02:51 +00:00
Jōshin
a1c548ced4
zuse: schnorrsig-sign from spec
test vectors match, but are byte-flipped. has to do a lot of endianness
twiddling.
2021-12-29 18:57:45 +00:00
Jōshin
aa3bbe165e
zuse: schnorrsig stubs 2021-12-25 08:47:43 +00:00