Hacker Newsnew | past | comments | ask | show | jobs | submit | Asmod4n's commentslogin

AMD is doing that for their next gen, no idea if khronos is involved.

Mruby has something like that build in, you can create a VM which only has basic data types and control flow, no i/o, rng, time, meta programming or any host access possible simply because most functionality is only available as gems and they simply aren’t loaded. Everything you can do with it should be fully deterministic.

but the fun thing about them is, they allow you to impersonate any mail address you want with their smtp server.

Aka, when you are a customer of them you get a @t-online.de address and login data for their smtp server.

You can just login into that server and set the From: Header to anything, they don't check.


Isn't that fairly common? You could then put in some other address, but you could do the same thing by setting up your own mail server, and in the former case you're not even really anonymous because the headers are going to show it was sent through their mail server and their mail server's logs will show which account was used to send the message.

The email sent from your own separate server will fail basic dmarc/SPF/dkim validation the email sent by their own servers likely will appear legitimate

It would fail in the same ways unless the from address you're using is on their domains, which is then only a problem for their own customers rather than innocent third parties, and their own customers have the sensible option to stop using their service.

In Germany I'd be surprised if the police didn't come to your house when you did that, and take all your computers to find evidence you sent it, and you're not getting them back even if you're proven innocent.

char on linux arm is unsigned, makes for fun surprises when you only ever dealt with x86 and assumed char to be signed everywhere.

This bit us in Chromium. We at least discussed forcing the compiler to use unsigned char on all platforms; I don't recall if that actually happened.

I recall that google3 switched to -funsigned-char for x86-64 a long time ago.

A cursory Chromium code search does not find anything outside third_party/ forcing either signed or unsigned char.

I suspect if I dug into the archives, I'd find a discussion on cxx@ with some comments about how doing this would result in some esoteric risk. If I was still on the Chrome team I'd go looking and see if it made sense to reraise the issue now; I know we had at least one stable branch security bug this caused.


Yup, by default a Linux based router won’t forward any traffic to a IPv6 host unless you explicitly have a program running which keeps on telling the kernel you want that.


All LG OLED tv at least can be controlled via an http API. So you don’t need a remote for them. You can turn them on and have them select any input.

That way you can completely use it like a monitor instead of a TV.


When you look what 24gb of ram costs right now it’s about 60% of that leaked price.

I’ve just bought a brand new Ryzen 5950x and will probably skip am5 altogether :|


It’s manageable with eBPF instead of seccomp so one has to adapt to that. Should be doable.


Maybe not so doable. The whole point of io_uring is to reduce syscalls. So you end up just three. io_uring_setup, io_uring_register, io_uring_enter

There is now a memory buffer that the user space and the kernel is reading, and with that buffer you can _always_ do any syscall that io_uring supports. And things like strace, eBPF, and seccomp cannot see the actual syscalls that are being called in that memory buffer.

And, having something like seccomp or eBPF inspect the stream might slow it down enough to eat the performance gain.


There is some interesting ongoing research on eBPF and uring that you might find interesting, e.g., RingGuard: Guarding io_uring with eBPF (https://dl.acm.org/doi/10.1145/3609021.3609304 ).


Ain’t eBPF hooks there so you can limit what a cgroup/process can do, not matter what API it’s calling. Like disallowing opening files or connecting sockets altogether.


So io_uring is like transactions in sql but for syscalls?


No. A batch of submission queue entries (SQEs) can be partially completed, whereas an ACID database transaction is all or nothing. The syscalls performed by SQEs have side effects that can't reasonably be undone. Failures of operations performed by SQEs don't stop or rollback anything.

Think of io_uring as a pair of unidirectional pipes. You shove syscalls and (pointers to) data into one pipe and the results (asynchronously) gush out of the other pipe, errors and all. Each pipe is actually a separate block of memory shared between your process and the kernel: you scribble in one and read from the other, and the kernel does the opposite.


Does wall clock time matter for anything but logging? For everything else one could just create any form „time“ to keep stuff in sync, no?


Isn't it also useful for checking validity periods for stuff like TLS certs or JWTs or Kerberos tickets?


We could use some made up „time“ for that since it’s not made for human consumption just sync between different systems.


I suppose this is changing with TLS certs moving towards ephemerality, but they used to have an entry on someone's calendar for renewal.


The one thing I like the most about mruby is the way you can ship apps.

When you normally want to ship apps which are written in Java, C#, python etc. you have to tell your users they have to download that runtime and your deps and how to start the runtime and which args to start your app from the command line.

With mruby you can just ship one file and everything is self contained.


For dotnet, there is a built-in flag "--self-contained".



This feature alone is a reason why I in some occasions use MRuby, when I have a Ruby script I want to share as standalone binary. I sometimes don't even have to rewrite anything, it just works.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: