Please create an account to participate in the Slashdot moderation system


Forgot your password?

Comment Re:Classes/Templates are not a magic bullet ... (Score 1) 406

Well, that kind of GENERATE_SORT() seems very ad-hoc way to do it and very specific to a sort.. My method looks more like this (dynamically growing type safe arrays):

#include "array.h"
int foobar_cmp(const struct foobar *f1, const struct foobar *f2); ..
ARRAY_DEFINE(foobars, struct foobar);
struct foobar f; ..
array_init(&foobars, 16);
array_append(&foobars, &f); ..
array_sort(&foobars, foobar_cmp);

I don't think that's much different (or more difficult) from how you'd do it with C++ templates. Of course implementing array.h is easier with C++.

Comment Re:Classes/Templates are not a magic bullet ... (Score 1) 406

It's also very hard to write type safe code properly in C. Just look at the classic example of the unsafe qsort versus the safer and faster std::sort.

You can do all kinds of nifty stuff with macros and gcc/clang extensions to provide type safety to C. Yeah, if you don't already have a library for that it can be a bit difficult to write one (or find one you like). But once you have the library it's very easy to write (mostly) type safe code with C. For example I have a type safe array_sort() in C.

Comment Re:QR codes don't all have destinations (Score 2) 234

But every implementation I've seen of a QR code reader in Android and IOS also gives you the option to inspect the content visually before acting on it. They ask if you want to proceed.

Of course one could argue the click-thru generation does not know enough to evaluate the content, but then these are the same people that no amount of malware/antivirus software can protect.

Is the confirmation something like OK/Cancel? I also tend to click OK buttons without hardly even reading them. That's why potentially security sensitive questions shouldn't have such simple buttons, but rather two (radio?) buttons that require you to read (and hopefully understand) what you're doing, such as: "Replace network settings from QR" and "Keep the existing network settings".

Comment Re:You're all wrong, and will be until about 2022 (Score 1) 79

SELinux doesn't address the problem. I agree with grandparent, although I think the focus should be more about on the UI side. The really low level implementation could perhaps be addressed with SELinux, but it's not a practical solution for any GUI app currently. For example how would you prevent Open Office from deleting everything in your home dir with SELinux, while still allowing it to read and write arbitrary documents? Yeah, you can't unless you manually go changing the labels every time you want to write somewhere.

I thought about how to implement an actually secure operating system in 2004, where you could safely just run any random program from internet, but no one cared to listen and I moved on.

Comment Whoa, you can dynamically open ports! (Score 2) 176

The apps can tell the firewall to open up a port for a period of time and then shut it back down.

I mean, it sounds almost like they could listen() a specific port, and once they're done with it, they could close() it! If all applications could always do this automatically, I think we could actually get rid of manual firewall configuration entirely!

Slashdot Top Deals

Can anyone remember when the times were not hard, and money not scarce?