--- Log opened Thu Mar 26 00:00:01 2015 |
00:11 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has joined #code |
00:11 | | mode/#code [+o thalass] by ChanServ |
00:20 | | Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code |
00:20 | | mode/#code [+o Red_Queen] by ChanServ |
00:25 | <&ToxicFrog> | McMartin: er. Isn't LXDE a DE, not a distro? |
00:25 | <&McMartin> | Yes. |
00:26 | <&McMartin> | That was a mistype above, probably influenced by the fact that back when I was using Xfce the only way to actually get easy access to it was with a blend/spin/custom subdistro. |
00:34 | < [R]> | No Xbuntu? |
00:43 | <&McMartin> | That would be a "custom subdistro" |
00:44 | <&McMartin> | And Xubuntu faded away, I thought. |
00:46 | < [R]> | I thought it was an official subdistro? |
00:47 | <&McMartin> | I guess? But the point is still standing exactly? |
00:47 | <&McMartin> | "It was a totally different download with a different top-level name" |
00:47 | < [R]> | I suppose, but you could always either: A) uninstall the Ubuntu package installing the Xubuntu one or B) start from Ubuntu-Minimal. |
00:48 | < [R]> | (Last I checked, all the mirrors shoved all the isos for the same version into the same directory anyways) |
00:48 | <&McMartin> | (A) is a larger download to get a smaller footprint and (B) ANAICT is "building a custom distro on your own" |
00:48 | < [R]> | But yeah, there is a lack of XFCE focused distributions. |
00:48 | <&McMartin> | But yeah, you said "I wanna install Xubuntu" and that was not the same clicky as "I wanna install Kubuntu" nor "I wanna install Ubuntu" |
00:49 | < [R]> | *shrugs* |
00:49 | < [R]> | Things changed on me |
00:50 | <&McMartin> | It's been a v. v. long time since I've had to bother |
00:52 | <&ToxicFrog> | I believe SUSE lets you pick XFCE at install time, but don't quote me on that |
00:52 | <&ToxicFrog> | I've been running Tumbleweed so long my memories of the SUSE installer are vague |
00:53 | <&McMartin> | Yeah, that's the right way to do desktop picks if anyone ever cares about it |
00:53 | < [R]> | I think Lunar did too. |
00:53 | < [R]> | But Lunar was weird in other ways. Thanks for defaulting to have /everything/ beep the most it possibly could. |
00:55 | <&ToxicFrog> | Hee |
00:55 | <&ToxicFrog> | I liked Lunar as a concept, it did the whole source-based distro thing a lot better than Gentoo, but the community/repos were too small. |
00:55 | < [R]> | What specifically did you like about it? |
00:56 | | * [R] liked the fact that it actually installed (whereas it took me a while before I could get a working Gentoo install) |
01:05 | <&ToxicFrog> | The package-management tooling and installer are way more polished and there are no immediately obvious trainwrecks like $USE. |
01:06 | <&McMartin> | God damn |
01:06 | | * McMartin is still bitter |
01:07 | <&ToxicFrog> | About gentoo? |
01:07 | <&McMartin> | $USE specifically |
01:07 | <&McMartin> | But yeah |
01:07 | <&McMartin> | I used gentoo for like three years and then switched to, IIRC, Fedora Core 3 |
01:07 | <&McMartin> | Which was a trainwreck |
01:07 | <&McMartin> | And SO MUCH BETTER |
01:08 | <&ToxicFrog> | Yeah that tracks my experience with Gentoo pretty well |
01:08 | <&McMartin> | I must conclude that in fact I never got Gentoo working properly at all |
01:08 | < [R]> | How's USE a trainwreck? |
01:08 | | * [R] hasn't gotten heavy into Gentoo. |
01:08 | <&ToxicFrog> | Except I switched from some Fedora version to Gentoo to see what the fuss was all about, went "lol people actually use this?", and switched back, more or less. |
01:08 | <&McMartin> | Imagine if, whenever you installed a package in Debian, you had to manually set all the configure flags |
01:08 | <&ToxicFrog> | [R]: it's a single huge flat namespace containing every configuration variable for every package on the system with no standards or commonly-used conventions |
01:09 | <&McMartin> | And that no attempt was made to keep them consistent across each package or sensible across updates |
01:09 | <&McMartin> | Also imagine the defaults broke core functionality, and that *no* settings existed that didn't break *some* core functionality. |
01:09 | < [R]> | wat |
01:09 | <&McMartin> | Yeah. |
01:09 | <&McMartin> | Yeah. |
01:09 | <&ToxicFrog> | There is no guarantee that the defaults for any given package make any goddamn sense whatsoever, and it also mixes general settings, installer-specific settings, and package-specific settings |
01:10 | <&McMartin> | Specifically, there was a flag that, when set, replaced all strings with wchar_t. Several packages needed it set to compile at all, and then wouldn't run since their dependencies were of course not compiled to do that. |
01:10 | <&ToxicFrog> | So you end up with, say, "XOrg" means "build and install X.Org when installing the OS", "X" means "build programs with X support where possible, except in places where the package maintainer forgot to respect this flag" |
01:11 | <&ToxicFrog> | But "X11" means "build this specific program you've never heard of using the X11 UI rather than the Curses or SDL one" |
01:11 | <&McMartin> | (wxWidgets, I believe, was the one with the epic unicode nothing-works-anywhere-ever-including-copy-pasted-hello-world-samples-from-the-d ocs issue) |
01:12 | <&Derakon> | wxWidgets' relationship with unicode is complicated~ |
01:13 | <&McMartin> | And by "complicated" I mean "wrong" |
01:13 | <&McMartin> | "senselessly aping the Win32 API, incorrectly" |
01:26 | | * thalass played with kubuntu today in liveusb. whee |
01:31 | <&McMartin> | I need to whip up some distro-test VMs. |
01:33 | < [R]> | Looking for a new distro? |
01:33 | | * [R] is getting in CRUX. |
01:34 | | * [R] is also really hating that most new news-worthy distros are just Ubuntu-forks (that take way to long to discover that they have that disease in them) |
01:37 | <&ToxicFrog> | I'm still quite happy with SUSE. |
01:45 | <@Shiz> | ~disease~ |
01:46 | <@Shiz> | McMartin: to your gripes with gntoo i say CANTREPRO WORKSFORME |
01:46 | <@Shiz> | use flags are sensible by default here |
01:46 | <@Shiz> | then again i've also never seen a char <-> wchar_t useflag |
01:51 | <@Shiz> | but these are more recent times of course |
02:02 | < Reiv_> | Man, are there any Linux distros that do not rapidly turn crap? |
02:02 | < Reiv_> | I remember the days of Fedora, but I get the impression that unless you're Big Business you wouldn't go near it with a ten foot pole these days |
02:03 | | * [R] is hoping CRUX |
02:03 | < Reiv_> | [R]: What's wrong with Ubuntu, in all seriousness? |
02:03 | < [R]> | Of course people have different requirements for the status of "crap". Arch Linux is more popular than it ever was, and IMO it's crap now. |
02:03 | < Reiv_> | It clearly suffers from the More Than Five Years Old stench, but beyond that? |
02:04 | < [R]> | Reiv_: Not Ubuntu specifically, but deb/dpkg. |
02:04 | < [R]> | Also the general package layout for any distro that uses it. |
02:04 | < Reiv_> | Does this matter at a level beyond developers? |
02:05 | < [R]> | ? |
02:05 | <@thalass> | I quite liked crunchbang, when I was using a netbook and before it was discontinued. |
02:07 | <&ToxicFrog> | [R]: "is this something end users, as opposed to package maintainers, need to care about" |
02:07 | <@thalass> | Reiver: This is a channel full of developers (other than me), so probably? |
02:09 | <~Vornicus> | debian, uh, how do I put this |
02:10 | <@Shiz> | arch always was crap |
02:10 | <@Shiz> | debian has gone off the bad end too |
02:11 | <@Shiz> | but that started with the introdution of their broken multiib gcc patches |
02:11 | <@Shiz> | so debian-gcc can't build upstream gcc anymore |
02:12 | <~Vornicus> | there's a common thread among apt-based systems where you end up with multiple packages for a single piece of software in different versions |
02:12 | < [R]> | 1) the entire system has way too many binaries full of a hundred options, either have a single entry point, or have entry points that do much simpler things. 2) Building a package is bullshit complicated compared to every other system. 3) Ubuntu specifically fucks things further by making the default be "install suggested packages as if they were manditory" 4) Some packages (postfix) had blocking CUI scripts run on install (which made synaptic wait days to |
02:12 | < [R]> | complete a system upgrade) 5) Some packages have the sane upstream defaults completely fucked up (AIDE) while the manual page doesn't mention the damage, requiring the user to trial-and-error to get the package working. |
02:14 | <@Shiz> | if i may play the devil's advocate |
02:14 | <@Shiz> | i fail to see why 1) is ubuntu's fault, and 2) goes for a lot of binary distros |
02:14 | < [R]> | I'm not laying blame on Ubuntu, Ubuntu merely made the disease much more popular. |
02:15 | < [R]> | #3 is the only thing that is Ubuntu-specific. |
02:15 | < [R]> | I should've perhaps said Debian rather than Ubuntu earlier. |
02:15 | <@Shiz> | ~Vornicus â there's a common thread among apt-based systems where you end up with multiple packages for a single piece of software in different versions |
02:15 | <@Shiz> | that is some of the real sad stuff |
02:15 | <@Shiz> | apt still has no thing similar to version slots |
02:16 | <@Shiz> | instead you get weird package names with sometimes the version as part of and sometimes not |
02:17 | < [R]> | Is there a package manager that actually does versioning? |
02:17 | <@Shiz> | portage |
02:17 | <@Shiz> | at least, it has version slots |
02:17 | <@Shiz> | which are useful |
02:18 | <@Shiz> | https://up.shiz.me/YTI0Zjc3.png |
02:18 | <@Shiz> | the saperate lines are versions belonging to separate version slots |
02:18 | <@Shiz> | the version with the green bg is the currently installed version |
02:19 | <@thalass> | So... #code is making their own distro? |
02:20 | < Reiv_> | gods no |
02:20 | < [R]> | I've been tempted so many times. |
02:20 | <@thalass> | I would totally support it, if it had a LCARS interface. |
02:21 | <@Shiz> | all distros suck, and the distro we would come up with would suck even more |
02:22 | < Reiv_> | Not least because we wouldn't agree on which bits sucked :p |
02:22 | < [R]> | Yup |
02:29 | <@thalass> | haha |
02:38 | < Reiv_> | To confirm: "1 â 3.3 x10^-(17) of the speed of light" is saying 0.9999999999999999966c or something, right? |
02:41 | <~Vornicus> | yes |
02:41 | <~Vornicus> | that's rather close to the speed of light |
02:44 | < Reiv_> | Yes, and thus while fascinating I think it is one particular fascinating relativistic effect that I can safely ignore for my spaceship game, however ¬¬ |
02:45 | < Reiv_> | (To whit, you get that fast, you start running into drag from *cosmic background radiation*) |
02:48 | <~Vornicus> | That's some serious drag |
02:50 | <~Vornicus> | Things I have discovered: "Minsky also invented a "gravity machine" that would ring a bell if the gravitational constant were to change, a theoretical possibility that is not expected to occur in the foreseeable future." |
02:56 | < Reiv_> | ... whut |
03:01 | <~Vornicus> | I don't know, I've gotten nowhere finding it but part of that is I'm coding |
03:01 | <~Vornicus> | and thus cannot be bothered |
03:02 | < Reiv_> | You're coding? |
03:02 | < Reiv_> | Vorn codes? |
03:03 | < Reiv_> | What does Vorn code? |
03:13 | <~Vornicus> | I'm writing a scenario lister for my ncaa bracket thingy |
03:14 | <~Vornicus> | specifically I want to run over all 2^15 possible outcomes of the remaining ncaa tournament games and determine what person in the bracket pool wins for each one. |
03:15 | <&McMartin> | 19:09 <@Shiz> that is some of the real sad stuff |
03:15 | <&McMartin> | Added to this is "And legions of fans who insist that this is an advantage" |
03:15 | <&McMartin> | Re: Fedora: Fedora != RHEL. RHEL is the one for enterprise users. |
03:16 | <&McMartin> | Fedora is intentionally bleeding-edge, and it's actually regularly more up-to-date for shit I care about than Debian unstable |
03:16 | <&McMartin> | Granted that I care about weird things |
03:18 | <&McMartin> | (like gambc) |
03:18 | <&McMartin> | (Which is six minor revisions behind which is enough to not support the standard make recipes) |
03:19 | <@Shiz> | latest version here is 4.7~ |
03:25 | < Reiv_> | Vornicus: Do you, in fact, *have* to do 2^15 calculations |
03:25 | < Reiv_> | Because you could do it in just half the time if you could do it in 2^14! |
03:30 | <&McMartin> | Shiz: Yep, that's what Fedora has too |
03:30 | <&McMartin> | Debian and its derivatives are still on 4.2.8 |
03:30 | <&McMartin> | Which doesn't take the -exe linking argument, which is kind of lame |
03:32 | <&McMartin> | 2^15 is... not actually a lot of calculations? |
03:35 | < Reiv_> | McMartin: c'mon, the joke wasn't /that/ stratospheric was it |
03:39 | <&McMartin> | The last time I was talking about doing 2^15 calcs people were proposing all kinds of implausible operations to cut that down |
03:40 | <~Vornicus> | It's not |
03:40 | < Reiv_> | Oh |
03:40 | <~Vornicus> | It's just, Excel can't handle it |
03:40 | < Reiv_> | Wheras I was making a lame mathematical joke~ |
03:45 | | * Vornicus gets scoring working correctly... |
03:50 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has quit [Operation timed out] |
03:51 | <~Vornicus> | Done. |
03:51 | | * Vornicus unleashes an army of robots, gets his answer in about 10 seconds |
04:06 | | Derakon is now known as Derakon[AFK] |
04:15 | | Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
04:57 | | macdjord|wurk is now known as macdjord |
05:01 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
05:07 | | AverageJoe [evil1@Nightstar-pqipp9.sd.cox.net] has joined #code |
05:40 | | kourbou|zzz [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
06:02 | <&McMartin> | Woot. Finished implementing all my Mega Man password generators. |
06:03 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
06:14 | < AverageJoe> | wha |
06:16 | <&McMartin> | As a callow youth I cracked all the password systems for the NES Mega Man games. A couple even made it into Nintendo Power. |
06:16 | <&McMartin> | As a more cunning young man I was finally good enough to also crack Mega Man 7's significantly more sophisticated systems. |
06:17 | < kourbou> | lol |
06:17 | < kourbou> | Sounds fun. |
06:17 | <&McMartin> | And now as I enter my dotage I figured I'd take the old article I wrote on how to do it and implement it in JS. |
06:18 | <&McMartin> | https://github.com/michaelcmartin/megaforge/blob/master/algorithms.txt is the old article. |
06:18 | < AverageJoe> | a 6502 debugger is built into fceux (nes emulator) as well as a live memory viewer |
06:18 | < AverageJoe> | makes cracking games easy for nes |
06:18 | < AverageJoe> | or making all kinds of weird shit happen |
06:18 | <&McMartin> | Yeah |
06:19 | < AverageJoe> | cuz you can edit that memory too |
06:19 | <&McMartin> | That's actually how we'd cracked 7 (albeit with ZSNES's debugger) but we ended up in a place where we had a password that could not be generated by the rules it followed but which was accepted anyway. |
06:19 | <&McMartin> | This stuff here though is all brute-force blackboxed with no tool more sophisticated than save/restore state. |
06:19 | <&McMartin> | Well |
06:20 | < AverageJoe> | zsnes has the debugger huh? snes9x's a litle lacking |
06:20 | <&McMartin> | "Brute-force blackboxed" after investigation of generated passwords under specific conditions to run experiments |
06:20 | <&McMartin> | This was in like 1998, man, my memory isn't *quite* that solid |
06:20 | <&McMartin> | We might actually have been memlocking the *emulator's simulation of the RAM* with a Windows-level debugger |
06:21 | <&McMartin> | We'd worked out most of the MM7 technique back then but we didn't work out a few crucial facts that I then deduced late last year |
06:21 | < AverageJoe> | that works too |
06:22 | <&McMartin> | That was enough to fire up an emulator and reverse engineer the rest of the system from the outside in with experimental password guessing. |
06:22 | <&McMartin> | (The only bit we hadn't worked out was the way the checksum bits worked) |
06:31 | | kourbou|phone [holoirc@Nightstar-a84.igd.160.37.IP] has joined #code |
06:32 | | kourbou|phone is now known as kourbou|school |
06:33 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Ping timeout: 121 seconds] |
06:33 | | kourbou|school [holoirc@Nightstar-a84.igd.160.37.IP] has quit [Connection closed] |
06:35 | | Kindamoody[zZz] is now known as Kindamoody |
06:38 | | Kindamoody is now known as Kindamoody|out |
07:04 | | AverageJoe [evil1@Nightstar-pqipp9.sd.cox.net] has quit [[NS] Quit: Leaving] |
08:00 | | celticminstrel [celticminst@Nightstar-gmujup.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
08:25 | | Vash [Vash@Nightstar-uhn82m.ct.comcast.net] has quit [Connection closed] |
09:18 | | macdjord is now known as macdjord|slep |
10:15 | <@Tarinaky> | Another air crash. :/ |
10:15 | <@TheWatcher> | Another far east airline? |
10:15 | < abudhabi> | And people wonder why I ain't gettin' on no plane, Hannibal. |
10:20 | <@TheWatcher> | Oh, no, german.. although apparently murder-suicide rather than unanticipated spontaneous exothermic disassembly |
10:23 | <@Tarinaky> | Murder-suicide is a bit of a jump. |
10:24 | <@Tarinaky> | The facts as of yet is that one of the cabin crew were locked out of the cabin, and there was no response from inside. |
10:30 | | * TheWatcher sighs, sets about trying to fix all these 'Possible precedence issue with control flow operator' warnings |
10:55 | | Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code |
10:55 | | mode/#code [+o Red_Queen] by ChanServ |
11:02 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has joined #code |
11:02 | | mode/#code [+o thalass] by ChanServ |
11:23 | | Red_Queen is now known as Checkmate |
12:14 | <@Tarinaky> | Hunh. Apparently murder-suicide is looking quite likely. |
12:14 | <@Tarinaky> | http://www.bbc.co.uk/news/world-europe-32063587 |
13:01 | | celticminstrel [celticminst@Nightstar-gmujup.dsl.bell.ca] has joined #code |
13:01 | | mode/#code [+o celticminstrel] by ChanServ |
13:08 | <@Wizard> | int t() { void ((*volatile p)()); p = (void ((*)()))InitializeMagick; return 0; } |
13:18 | <@Wizard> | I apologize in advance for this, it will be ten lines |
13:18 | <@Wizard> | 13: /*top*/ |
13:18 | <@Wizard> | 14: int t() { void ((*volatile p)()); p = (void ((*)()))InitializeMagick; return 0; } |
13:18 | <@Wizard> | 15: int main(int argc, char **argv) |
13:18 | <@Wizard> | 16: { |
13:18 | <@Wizard> | 17: if (argc > 1000000) { |
13:18 | <@Wizard> | 18: printf("%p", &t); |
13:18 | <@Wizard> | 19: } |
13:18 | <@Wizard> | 20: |
13:18 | <@Wizard> | 21: return 0; |
13:18 | <@Wizard> | 22: } |
13:19 | < EvilDarkLord> | I didn't want to interrupt, but next time, use pastebin. |
13:19 | <@Tarinaky> | Or gist. |
13:19 | <@Wizard> | I'm sorry, my frustration got the best of me |
13:20 | <@Tarinaky> | I have literally no idea what line 14 is doing. |
13:20 | <@Tarinaky> | I suspect something evil and smelly. |
13:20 | <@Wizard> | You would be correct |
13:20 | <&ToxicFrog> | It's function pointer wackiness. |
13:21 | <@Tarinaky> | Yes. |
13:21 | <&ToxicFrog> | This is something demonstrating a stack whack if you pass a completely insane number of arguments to main or something of that ilk, isn't it? |
13:26 | <@Wizard> | ToxicFrog: As the name may suggest through the strange spelling |
13:26 | <@Wizard> | This is imagemagick source code |
13:26 | <@Wizard> | I'm fairly open to the function pointer hijinx, what mainly confuses me is how you get argc to surpass one million |
13:30 | | * TheWatcher greps the imagemagick source |
13:31 | <@Shiz> | Wizard: my guess is |
13:31 | <@Shiz> | it prevents the InitializeMagick symbol from being optimized out by the compiler |
13:31 | <@Shiz> | by assigning it to a volatile variable |
13:31 | <@Shiz> | literally all i can think of |
13:31 | <@TheWatcher> | Uh, where in the source? Doesn't appear in the 6.9.0 source |
13:31 | <@TheWatcher> | Not that I can see |
13:32 | <@Wizard> | It may be rmagick source in that case |
13:32 | <@Wizard> | This log file is not very clear on the matter |
13:32 | <@Shiz> | https://github.com/rmagick/rmagick/search?utf8=%E2%9C%93&q=1000000&type=Code |
13:33 | <@Wizard> | Alright, time to grep |
13:33 | <@Shiz> | found something |
13:33 | <@Shiz> | oh |
13:33 | <@Shiz> | it's just a configure checker |
13:33 | <@Shiz> | it checks if the symbol exists |
13:34 | <@Shiz> | http://pastie.org/pastes/1293008 |
13:34 | <@Shiz> | see line 51 |
13:34 | | * TheWatcher nods |
13:35 | <@Wizard> | Ohh |
13:35 | <@Wizard> | Alright, gotcha |
13:35 | <@Wizard> | Cheers ( ââ¿â) |
13:35 | <@Shiz> | i agree it's an odd way of doing it |
13:35 | <@Shiz> | my configure.prelude does the same but easier |
13:35 | <@Shiz> | sadly i lost the source code |
13:37 | <@Wizard> | Well, learn something new every day |
14:23 | <@Tarinaky> | http://blog.shelter.org.uk/2015/03/the-5-most-ridiculous-properties-of-2015-so-f ar/ |
14:40 | <@Shiz> | why does that site have no css |
14:41 | <@Tarinaky> | Not sure. |
14:41 | <@Tarinaky> | They might be experiencing a demand issue. |
14:41 | <@Tarinaky> | Since it's trending on the facebooks. |
14:41 | <@Shiz> | no, their stylesheet is just a 404 it seems |
14:45 | <@Tarinaky> | No idea then. |
15:23 | <@Wizard> | Someone goofed, I presume |
15:43 | <@gnolam> | Glagharhgl |
15:43 | <@gnolam> | Time to break out the Code Scotch. :P |
15:44 | <@gnolam> | (Qt's stylesheets = pain) |
15:44 | <@TheWatcher> | I was about to ask whether you knew gaelic.. |
15:46 | <@gnolam> | ("Glengoolie. For the best of times.") |
16:34 | | macdjord|slep is now known as macdjord|wurk |
16:55 | <@iospace> | ... I what |
16:56 | <@iospace> | so, in this code, there's an "if (foo < -1) |
16:56 | <@iospace> | so, in this code, there's an "if (foo < -1)" statement. right after that, inside that if is "if (foo == -1)". I'm like "You can never get there" Dx |
16:56 | <@gnolam> | Race condition.~ |
16:57 | <@iospace> | this is single threaded here |
17:01 | <@TheWatcher> | for small values of -1~ |
17:02 | <@iospace> | TheWatcher: this is an int, not a float |
17:03 | <@iospace> | either way, this codebase is crap |
17:21 | <@thalass> | Afternoon, all. I've found my concentration background noise thing, after all these years: http://mynoise.net/NoiseMachines/spaceshipNoiseGenerator.php |
18:30 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has quit [Ping timeout: 121 seconds] |
18:48 | <&McMartin> | Hey, uh, TW |
18:48 | <&McMartin> | Take a look at eternity.obsidian.net |
19:16 | <&ToxicFrog> | Heee |
19:17 | | Vash [Vash@Nightstar-uhn82m.ct.comcast.net] has joined #code |
19:17 | | mode/#code [+o Vash] by ChanServ |
19:44 | < abudhabi> | XFCE seems a lot friendlier than LXDE. |
19:45 | <&McMartin> | That's good. How is it on size and speed? |
19:51 | < abudhabi> | It's not noticeably slower than LXDE, and it's like maybe twice as big unpacked. |
19:52 | < abudhabi> | I like how I can choose my DE at login in Mint. |
20:00 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
20:02 | <&ToxicFrog> | abudhabi: er...that's been a standard feature of every LM except xdm for like five years now |
20:02 | <&ToxicFrog> | If not more |
20:03 | <&McMartin> | I don't know about standard but yeah, it's been an option for awhile as long as you know exactly which things to install and configure |
20:03 | <&McMartin> | And where it's hiding |
20:04 | < abudhabi> | The last Linux I've used was Debian, and that was years ago. |
20:05 | <@TheWatcher> | McMartin: ... well now I know who to blame for the insomnia! |
20:07 | < kourbou> | Does anyone have a simple example of a dynamic allocator in c++? |
20:08 | <&McMartin> | Uh, besides "calling new"? |
20:08 | < kourbou> | Oh. lol |
20:10 | < kourbou> | Nevermind. Find what I was looking for. :P |
20:10 | <&McMartin> | I mean, sometimes people write their own memory managers - OpenSSL infamously did, which is why Heartbleed wasn't detected by automated tools - but dynamic allocation AIUI is just "grabbing the RAM at runtime as needed" |
20:10 | < kourbou> | Found* |
20:10 | < kourbou> | Ah OK. I thought it was more complex. |
20:10 | <&McMartin> | It can be as complicated as you want |
20:11 | < abudhabi> | Anyone know how to fix the missing notification area icons in XFCE? |
20:11 | <&McMartin> | And if the question is "how do you go about actually implementing malloc()", that's an entire class worth of stuff |
20:11 | < abudhabi> | Skype and Dropbox and stuff are running, but they're absent from that field. |
20:11 | < kourbou> | So that's heartbleed started? wow |
20:11 | < kourbou> | I'm curious now. *googles heartbleed* |
20:12 | <&McMartin> | So, there are tools that will automatically trap when you go outside of memory the OS has set for you |
20:12 | <&McMartin> | Those didn't find heartbleed (a go-outside-of-memory bug) AIUI because OpenSSL grabs a bunch of memory at the start and subdivides it as needed on its own |
20:12 | <&McMartin> | So that meant that those tools didn't see it leave that bunch of memory and said "all clear" |
20:13 | < kourbou> | Oh I see. Sort of like "secret memory"? |
20:13 | <@celticminstrel> | It still does that? |
20:14 | <&McMartin> | celticminstrel: I'm specifically talking about the heartbleed bug and how it went unnoticed at the moment, so it's true as of like five years ago~ |
20:15 | < kourbou> | So OpenSSL was totally vulnerable for a few years? |
20:15 | <&McMartin> | Yeah |
20:15 | <&McMartin> | Uh, while we're at it, bash was totally vulnerable for something like 25 |
20:15 | < kourbou> | Hahaha. Wait what? |
20:15 | <&McMartin> | Also google "shell shock" :) |
20:16 | < kourbou> | lol I Googled "bash 25 year vulnerability" |
20:17 | < kourbou> | Also what are the chances that hackers found the HB exploit before it was patched? |
20:18 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
20:18 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
20:18 | < kourbou> | You were saying? My client crashed :( |
20:18 | <@Tamber> | 1. |
20:18 | <&McMartin> | Heartbleed's severity was classified as "apocalyptic". A sizable fraction of the world's certificates were considered compromised as a result. |
20:19 | <@Tamber> | Basically, your average "everything sucks" bug~ |
20:19 | <&McMartin> | (This isn't a joke; they really called it that) |
20:19 | < kourbou> | wow |
20:19 | <&McMartin> | Tamber: Kinda, but it actually *was* what they say everything is~ |
20:19 | < kourbou> | Didn't know HB was this bad. |
20:19 | <&McMartin> | HB and SS were the two big ones |
20:19 | <&McMartin> | If you're running normal systems the autoupdaters caught it super-fast |
20:19 | <&McMartin> | It's if you're running servers/websites that it was panicmode |
20:20 | <@TheWatcher> | No kidding >.> |
20:22 | < kourbou> | lol they called it "Bashdoor". Clever name :3 |
20:22 | <&McMartin> | Apparently there were a suite of issues around this |
20:23 | <&McMartin> | They all remind me of the format string attack, viz., the language should not permit this shit by default you twazzocks |
20:23 | <&McMartin> | I would like a --no-l33t-features runtime switch |
20:24 | < kourbou> | Heh |
20:25 | <@TheWatcher> | Yeah, my response when shell shock first hit was "why the fuck not just yank the code entirely, I mean whoever would even /use/ that feature?" |
20:26 | < Reiv_> | what was the feature? |
20:26 | < kourbou> | $ McMartin --no-l33t-features |
20:26 | <&McMartin> | Executable code in environment variables |
20:26 | <@Tamber> | TW: Inevitably some "critical infrastructure" will be relying on that feature. :( |
20:26 | <@Tamber> | Simply by its existence. |
20:26 | < kourbou> | ^ |
20:26 | <@TheWatcher> | Tamber: they can keep using CentOS then |
20:26 | <@Tamber> | :) |
20:26 | < Reiv_> | ... executable code in enviroment variables how on earth is that a good idea |
20:26 | <&McMartin> | The %n argument in printf was when I originally made this observation |
20:26 | < Reiv_> | Is that so you can procgen your enviroment variables or something |
20:27 | < Reiv_> | %n ? |
20:27 | <&McMartin> | Hold that thought |
20:27 | <&McMartin> | I think it was to procgen them based on the system you just logged into |
20:27 | <&McMartin> | So one script could do different ("proper") things on multiple machines while being programmed remotely |
20:27 | < kourbou> | Do you have other epic cussing fails? XD teaches me stuff. |
20:27 | <&McMartin> | Because remotely programming systems is a feature and not the definition of pwnz0rship right. |
20:27 | < kourbou> | Coding* |
20:28 | <&McMartin> | I was just the other day recommending a teaching book on C++ |
20:28 | <&McMartin> | Called "How Not To Program In C++" |
20:28 | < kourbou> | lol |
20:28 | <&McMartin> | It's aimed at skilled novices |
20:28 | <&McMartin> | But it's basically a puzzle book |
20:28 | <&McMartin> | It's great. |
20:28 | < kourbou> | Sounds good. I'll check it out. |
20:28 | <&McMartin> | "Find the horrible failure in this code" |
20:28 | | * McMartin returns from interrupt |
20:28 | <&McMartin> | So, %n |
20:28 | < Reiv_> | McMartin: How did a feature like that show up without considerable scrutiny? |
20:28 | < Reiv_> | The moment I hear "Allows you to execute code remotely" I would be going "That sounds awfully lot like an attack vector" |
20:29 | <&McMartin> | 1990 was a more innocent time. |
20:29 | <&McMartin> | This is the only real explanation I have |
20:29 | <@TheWatcher> | Part of it is probably that its age puts it back in the Simple Days, yeah. |
20:29 | < Reiv_> | ... ah, actually, I can kinda believe that |
20:29 | <&McMartin> | %n is a thing you can put in printf format strings, like %d or %i |
20:29 | < Reiv_> | The Internet wasn't really a thing, people saw it and went "Oh, neat", the dude who wrote in presumably needed it for simplifying deployment, and... |
20:29 | <&McMartin> | Or %s |
20:29 | <@TheWatcher> | The other part is that the feature is was so obscure and arcane that pretty much nobody ever thought to check it |
20:30 | <&McMartin> | But while those all are "read an argument from the list, interpret it as an __________, and print it out"... |
20:30 | <@TheWatcher> | (other than the NSA, obv.) |
20:30 | <@Tamber> | Back when the Internet was that nice little neighbourhood filled with artists and hackers, before the assholes moved in with the burnt-out cars on blocks on the front lawn... |
20:30 | <@Tamber> | :p |
20:30 | | * TheWatcher waves his cane |
20:30 | < kourbou> | xD |
20:30 | <&McMartin> | %n is "take the next argument on the arglist, treat it as a pointer to integer, and write the number of characters printed so far out to it" |
20:30 | | Kindamoody|out is now known as Kindamoody |
20:31 | <&McMartin> | This is exploitable in roughly the same way SQL injection is. |
20:31 | < Reiv_> | ... how on earth is that possibly considered a good idea |
20:31 | < Reiv_> | I mean, who *thought that one up* |
20:31 | < Reiv_> | That is, like, NSA-installing-vulnerabilities level crap |
20:31 | <&McMartin> | This way you don't have to allocate extra space for an in-memory copy of your string and save yourself a call to strlen! |
20:31 | < EvilDarkLord> | A guy who thought ahead and figured he'd be one of the black hats when he grew up~ |
20:32 | < Reiv_> | McMartin: Is this, uh |
20:32 | <@TheWatcher> | Reiv_: Probably someone with a specific problem, who didn't follow through the implications. Or yeah, a deliberate backdoor. |
20:32 | < Reiv_> | Something so impossibly old |
20:32 | <&McMartin> | TheWatcher: To be fair |
20:32 | <&McMartin> | This is printf |
20:32 | < Reiv_> | That memory was an issue |
20:32 | <@TheWatcher> | True |
20:32 | <&McMartin> | So you're already writing in C |
20:32 | <&McMartin> | So lol to all notions of memory safety |
20:32 | <&McMartin> | Memory safety is a bug in the C spec, AIUI. |
20:32 | <@TheWatcher> | snrk |
20:33 | < EvilDarkLord> | Has this gotten ported when other languages have implemented their printf-likes? |
20:33 | <&McMartin> | EvilDarkLord: My understanding is no, because most other printflikes are actually either (a) println-alikes via Pascal, which don't do format strings and thus are fine |
20:33 | <&McMartin> | Or (b) sprintf-likes, which don't bother with this because you could, like, call strlen. |
20:34 | <&McMartin> | The attack relies on properties of C-style varargs that were, cough, not widely imitated |
20:35 | <&McMartin> | Reiv_: One mitigating factor for these is that unlike SQL injection, it's a lot easier to say "Any nonconstant format string is a bug, rewrite that code" and you can check that with a *lexer*. |
20:36 | <&McMartin> | Basically search for printf([\s*][^"] |
20:36 | <&McMartin> | Maybe some more \s*s in there |
20:36 | < Reiv_> | Truth |
20:36 | <&McMartin> | My REs are not swapped in right now |
20:36 | < Reiv_> | I wrote a regular expression the other day! |
20:36 | < abudhabi> | "Are you sure that you want to remove "Workspace Switcher"? If you remove the item from the panel, it is permanently lost." |
20:37 | < Reiv_> | It was seven characters long. It took me an hour. >_< |
20:37 | < abudhabi> | Does this ACTUALLY permanently removes the item forever without appeal? |
20:37 | < abudhabi> | -s |
20:37 | <&McMartin> | At this point you know more about Xfce in its modern incarnations than I do -_- |
20:38 | | * abudhabi bites the bullet and cleanses the workspace switcher. |
20:39 | < kourbou> | What's AIUI? |
20:39 | < abudhabi> | As I understand it. |
20:39 | < kourbou> | Oh thanks. :P |
20:40 | <&McMartin> | That's what I meant when I used it up there |
20:40 | <&McMartin> | (Though that line was half joking) |
20:41 | <&McMartin> | (BUT ONLY HALF) |
20:46 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has joined #code |
20:46 | | mode/#code [+o thalass] by ChanServ |
20:47 | < abudhabi> | XFCE's interface for adding application launchers to the panel reminds me of Dwarf Fortress. |
20:47 | < kourbou> | lpl |
20:47 | < kourbou> | Lol |
20:47 | < abudhabi> | I mean, it can be used, and it makes sense for a certain perspective, but it makes me think that it was designed by a Martian. |
20:48 | <&McMartin> | I'm sorry I'm going to spend the rest of the day thinking "xterm is in a fey mood, demands bonobo leather trousers" |
20:48 | < kourbou> | Oh i thought the actual interface was in ncurses. XD |
20:49 | <&McMartin> | Nah, Xfce is a lightweight X desktop environment, but it's not *that* lightweight. :) |
20:50 | < kourbou> | :P |
20:50 | < abudhabi> | The way you do it is you RMB the panel, go to Panel Preferences, you add a Launcher, then you RMB the placeholder icon added to the panel, go to Properties, click the + button then select your application from the list. |
20:50 | < kourbou> | Well that's what I remember from dwarf fortress: the really really complicated ncurses UI. |
20:51 | < abudhabi> | Why couldn't the final list be on the first list (where the Launcher is located) is beyond me. |
20:56 | | Alek [omegaboot@Nightstar-03ja8q.il.comcast.net] has quit [Ping timeout: 121 seconds] |
21:16 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
21:16 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
21:19 | | Vashicus [Vash@Nightstar-uhn82m.ct.comcast.net] has joined #code |
21:22 | | Vash [Vash@Nightstar-uhn82m.ct.comcast.net] has quit [Ping timeout: 121 seconds] |
21:25 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
21:26 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
21:26 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
21:26 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
21:27 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has quit [Ping timeout: 121 seconds] |
21:30 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
21:30 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
21:42 | | Vashicus is now known as Vash |
21:42 | | mode/#code [+o Vash] by ChanServ |
21:42 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
21:42 | | kourbou [holoirc@Nightstar-deqg8j.fbx.proxad.net] has joined #code |
21:44 | | kourbou is now known as kourbou|willdc |
21:44 | | Kindamoody is now known as Kindamoody[zZz] |
21:47 | | kourbou|willdc [holoirc@Nightstar-deqg8j.fbx.proxad.net] has quit [Connection closed] |
22:00 | | Alek [omegaboot@Nightstar-03ja8q.il.comcast.net] has joined #code |
22:00 | | mode/#code [+o Alek] by ChanServ |
22:18 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
22:18 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
22:26 | | VirusJTG_ [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
22:26 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [Connection closed] |
23:34 | | Derakon[AFK] is now known as Derakon |
23:58 | | thalass [thalass@Nightstar-h1qmno.eastlink.ca] has joined #code |
23:58 | | mode/#code [+o thalass] by ChanServ |
--- Log closed Fri Mar 27 00:00:17 2015 |