WTF Bites



  • @djls45 Yes. I should know that. <excuse here> 🙂



  • @cvi You aught to have known that

    🚎 (img height works in preview but not in post)



  • Looking at the pcapng spec to help a coworker parse something...

    0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |      Option Code              |         Option Length         |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                       Option Value                            /
    /          /* variable length, aligned to 32 bits */            /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                                                               /
    /                 . . . other options . . .                     /
    /                                                               /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |   Option Code == opt_endofopt  |  Option Length == 0          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    

    At first, I was wondering why the option code field is 13 bits wide. Looking at the actual file, I couldn't get it to line up with anything. Then I realized the first row isn't marking out 8-bit bytes, it's marking out 10-bit groups, but nothing is 10-bit aligned so the bit documentation at the top is dumb and has no reason to be weird.

    WHY WOULD YOU DO THAT.jpg


  • I survived the hour long Uno hand

    @mott555
    I would postulate it has something to do with the fact that the rows are 32 bits (00-31) long, and it was easier to put the 10s digit in an overrow than to either use 2 digits for each bit number and have no space, or wind up with 910 1 at one point.

    🍹



  • @izzion WHO THE :wtf::wtf::wtf::wtf: LABELS BIT COUNTS FOR 32-BIT ALIGNED BINARY DATA IN DECIMAL!!!!

    This spec just gave me a bad case of the Mondays.


  • ♿ (Parody)

    @mott555 said in WTF Bites:

    At first, I was wondering why the option code field is 13 bits wide. Looking at the actual file, I couldn't get it to line up with anything. Then I realized the first row isn't marking out 8-bit bytes, it's marking out 10-bit groups, but nothing is 10-bit aligned so the bit documentation at the top is dumb and has no reason to be weird.

    What? Uh...it's just numbers at the top...0-31. 32 bits. The code is the first 16, the length is the last 16, then the value follows. It looks like the opt_endofopt is 16.5 bits though, which must be interesting.



  • @boomzilla

    For comparison, we all expected (and assumed) it was this, because that's how everything else we deal with is documented:

     0               1               2               3
     0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |      Option Code              |         Option Length         |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                       Option Value                            /
    /          /* variable length, aligned to 32 bits */            /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                                                               /
    /                 . . . other options . . .                     /
    /                                                               /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |   Option Code == opt_endofopt  |  Option Length == 0          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    

    I hope that shows up properly. The preview was doing...strange things. Oops. Preview is fixed-width, the editor is not.


  • Java Dev

    @mott555
    I'm pretty sure I've seen both in RFCs.


  • ♿ (Parody)

    @mott555 said in WTF Bites:

    For comparison, we all expected (and assumed) it was this, because that's how everything else we deal with is documented:

    Huh...I don't think I've ever seen octal labels like that, though admittedly I don't look at a whole lot of RFCs. I was really thrown by how you said "groups of 10 bits," because it was just numbering the bits as far as I could tell, and why not decimal?


  • Java Dev

    @boomzilla In networking you don't have 32 bits. You have 4 octets.


  • ♿ (Parody)

    @PleegWat said in WTF Bites:

    In networking you don't have 32 bits.

    I'm assuming (now) that's what pcapng is?



  • @boomzilla Yeah, pcapng is a file format for storing Ethernet captures. I'm fairly certain the file format was created by the Wireshark team. I might have forgotten to mention that earlier.


  • ♿ (Parody)

    @mott555 WHARGARBLE mind readers!!!!


  • Java Dev

    @mott555 Which I knew because I handle pcap files pretty frequently as well.


  • Java Dev

    @mott555

    pcap is the file format used by libpcap/winpcap, which wireshark uses for packet capture. Google results on pcapng are scarce; It's an evolution of basic pcap but I can't find further details offhand.



  • @PleegWat Huh. I had no trouble finding the spec, although this is a draft from 2004 and I don't know if there's a newer revision. There might be, because we had stuff in the capture provided by the customer that doesn't follow this spec, but we were unable to locate anything newer...which is yet another WTF Bite I suppose.



  • My WTF of the day:

    Not this video.

    https://www.youtube.com/watch?v=tfXWXNItF_Y

    But rather the comments. Geeze.


  • Java Dev

    @mott555 Hm, looks over-engineered. They probably had need to. I'll pay closer attention if anyone ever asks for support, which is unlikely because the tcpdump command-line tool on all supported platform still produces normal pcap files at the moment and it's a debugging tool anyway. Normal operation is live capture.



  • @Rhywden said in WTF Bites:

    But rather the comments. Geeze.

    Seriously - Geeze. Someone go over to that snake story and pull the damn lever.




  • Considered Harmful

    @cartman82 said in WTF Bites:

    Bonus WTF: their awful site:

    http://www.esinomed.de/esinomed/de/web.html

    Apart from the fact that they used some website scraper to copy their own site to somewhere else: I've seen worse. Like HP's for instance, guys who really ought to know better.
    Of course their wording... :rolleyes:

    We offer systems for medical sensitive areas, such as operating rooms which require the highest quality standards. The perfect combination of intensive consulting, high quality technologies and competent support guarantee your best solution.

    Oh, riiight ...



  • At first I thought this

    @LaoC said in WTF Bites:

    @cartman82 said in WTF Bites:

    Bonus WTF: their awful site:

    http://www.esinomed.de/esinomed/de/web.html

    Apart from the fact that they used some website scraper to copy their own site to somewhere else: I've seen worse. Like HP's for instance, guys who really ought to know better.
    Of course their wording... :rolleyes:

    We offer systems for medical sensitive areas, such as operating rooms which require the highest quality standards. The perfect combination of intensive consulting, high quality technologies and competent support guarantee your best solution.

    Oh, riiight ...

    was in response to this:

    @coldandtired said in WTF Bites:

    In today's irony overload section:
    https://christiantruther.com/end-times/demonology/theres-a-war-for-your-soul-churches-are-being-infiltrated-by-deceptive-cults/

    because of the reversed 'demonise' link: www.esinomed.de/esinomed/de/web.html


  • BINNED

    @Rhywden said in WTF Bites:

    My WTF of the day:

    Not this video.

    https://www.youtube.com/watch?v=tfXWXNItF_Y

    But rather the comments. Geeze.

    Hmm 220 upvotes for this:

    Just look at the drastic damage control, first that paid actor who shot up comet pizza to make the good people trying to bring these sick fucks to justice look crazy now there's bought and paid journalists and TV host's trying to discredit it with no evidence debunking pizza gate. Its truly pathetic how far these people are willing to go to cover up all of these sick twisted individuals crimes.

    Now I start to feel much much better about TD:wtf: Trumpets!



  • @dse said in WTF Bites:

    @Rhywden said in WTF Bites:

    My WTF of the day:

    Not this video.

    https://www.youtube.com/watch?v=tfXWXNItF_Y

    But rather the comments. Geeze.

    Hmm 220 upvotes for this:

    Just look at the drastic damage control, first that paid actor who shot up comet pizza to make the good people trying to bring these sick fucks to justice look crazy now there's bought and paid journalists and TV host's trying to discredit it with no evidence debunking pizza gate. Its truly pathetic how far these people are willing to go to cover up all of these sick twisted individuals crimes.

    Now I start to feel much much better about TD:wtf: Trumpets!

    YOU HAVE NO EVIDENCE THAT THE PIZZA RESTAURANT WITH NO BASEMENT DIDN'T HAVE A SEX DUNGEON UNDER ITS NONEXISTENT BASEMENT

    In related news, you also have no evidence that there is a turtle emoji in topic 21591 or post 1058351 because those IDs do not correspond with any topic or post.



  • if ($scope.isValuePositive(actual)) {
        scaled = highest - Math.abs(actual);
    } else {
        scaled = highest + Math.abs(actual);
    }
    

    ⁉


  • Winner of the 2016 Presidential Election

    @Bulb said in WTF Bites:

    if ($scope.isValuePositive(actual)) {
        scaled = highest - Math.abs(actual);
    } else {
        scaled = highest + Math.abs(actual);
    }
    

    ⁉

    Maybe they're coding for an embedded processor without a filesystem that can't handle double negatives?



  • @Dreikin said in WTF Bites:

    Maybe they're coding for an embedded processor without a filesystem that can't handle double negatives?

    Does Android WebView 53+ could as embedded?


  • 🚽 Regular

    @ben_lubar said in WTF Bites:

    In related news, you also have no evidence that there is a turtle emoji in topic 21591 or post 1058351 because those IDs do not correspond with any topic or post.

    Are you asking for a self-fulfilling prophecy?



  • It really would have been nice to be warned that QuickBooks Online and Mint.com use the same login...

    I set up a trial QuickBooks Online account to test something for a potential customer, and it told me that my email was already in use. I didn't recall ever setting up QuickBooks Online before, but I did a password reset and was able to change my password and log in.

    A few days pass by, and now my KeePass credentials for Mint don't work anymore. Then I noticed "intuit" in the URL...



  • Chocolatey means QUALITY!!!1

    (Yes, the title of the page is FeaturesAutomaticallyRecompilePackages)

    Here's a frame from the second image on the page, an animated gif of a powershell window with someone typing into it.

    0_1481862810805_upload-bf64c5a5-9075-4bd3-ae77-373fe62cd248

    SEVEN MOUSE CURSORS!

    0_1481863120316_upload-928b6fad-25ea-4352-a001-2beaaae02079

    Anyway, the first image on the page is pretty high quality too:

    0_1481863188154_upload-9fbeb356-5312-457a-a18c-a1b03a9b0889

    All it's missing is some hand-drawn MS Paint arrows.

    But enough about the tutorials. Let's talk about quality software!

    ProGet is actually pretty good software if you want to host your own NPM or NuGet or whatever. Let's look at its page on Chocolatey!

    Let's click on one of the underlined links that use a text selection cursor!

    The script named tools\chocolateyInstall.ps1 downloads an EXE over unsecured HTTP and then runs it. It does not check for a signature or that the hash of the file is correct. This is obviously good enough to earn a TRUSTED rating.

    They have virus scan results below the script:

    • proget.4.6.3.nupkg (e8068d5bc8e0) - ## / 54 - Log in or click on link to see number of positives
    • ProGetSetup4.6.3.exe (b5d220344f0e) - ## / 55 - Log in or click on link to see number of positives

    Seeing the results of the virus scan is a premium feature!


  • Trolleybus Mechanic

    @ben_lubar said in WTF Bites:

    The script named tools\chocolateyInstall.ps1 downloads an EXE over unsecured HTTP and then runs it. It does not check for a signature or that the hash of the file is correct. This is obviously good enough to earn a TRUSTED rating

    You can trust me, baby. We don't need protection.


  • Notification Spam Recipient

    @ben_lubar said in WTF Bites:

    SEVEN MOUSE CURSORS!

    0_1481866303464_upload-2a47da9c-cb0d-4ed9-9bdd-561a1a49c3fe

    OMG FIVE MOUSE CUR--- oh wait.


  • Java Dev

    @Tsaukpaetra I loved that feature when I first found out about it.

    I was 10 at the time.

    It lasted a week. Maybe shorter.


  • kills Dumbledore

    @PleegWat Combined with the dinosaur mouse pointers and the "hit ctrl to point out where the mouse is", it was really fun. For a day or so



  • Kind of defeats the point of noSQL...



  • 0_1481890996444_upload-8234b82e-93ce-4c25-bb09-324ec3e32956

    Trying to explain to the underachiever why he can't just draw a timeline chart with raw numbers from the server, but must fill in the empty time slices with zeros.

    0_1481891229504_dsc_0601_1024.jpg

    After trying to convince me it's not a big deal for hour precision, I think he now finally gets it and is off to produce more shitty code.

    This is a senior developer, BTW.


  • Discourse touched me in a no-no place

    @cartman82 said in WTF Bites:

    but must fill in the empty time slices with zeros.

    Sometimes you need to use a null (of some sort) instead; you don't necessarily have no events, just no information.


  • BINNED

    I just randomly found out some project at work calls its weekly meetings "cabals". Who comes up with this shit?


  • I survived the hour long Uno hand

    @blek
    The technical term is "consultants"

    Let's pull that word apart.

    CONsultants
    CONsultants
    noun

    1. People who live like a king by convincing other people to part with their money in exchange for services of dubious value.

  • BINNED

    Oh, and another project, one that I actually care about, just announced some major changes, including the schedule for a new major release deployment - over a podcast, and literally no other way. This is how I imagine the decision making process behind that:

    Asshole 1: Hey, we should probably do an announcement about the next release, it's going to be big.
    Asshole 2: Yes, but how do we make this as inconvenient as possible to everyone? Also, I'm a fucking retard so instead of doing something productive, I want to spend an hour just talking about shit into a microphone. And I want to make everyone listen to my annoying, nasally voice, because I have a gigantic ego.
    Asshole 1: Oh man, that gives me an idea: how about we do a podcast? So instead of everyone being able to get the most important info by skimming through the announcement in 30 seconds, they'll have to listen to us talk for 60 fucking minutes, while staring at a blank screen the entire time like complete fucking assholes so they don't miss anything?
    Asshole 2: Wow, you're a fucking genius!

    Calm down, Blek, calm down, the Christmas shutdown starts soon, think happy thoughts...


  • I survived the hour long Uno hand

    @izzion
    Hm, I missed an opportunity to make the last phoneme a play on "tits"

    ⏪

    CONsultan-tits
    noun

    1. Boobs who live like a king by convincing other people to part with their money in exchange for services of dubious value.

  • Discourse touched me in a no-no place

    @blek said in WTF Bites:

    Oh, and another project, one that I actually care about, just announced some major changes, including the schedule for a new major release deployment - over a podcast, and literally no other way.

    At least it wasn't just announced on a live stream…



  • @blek said in WTF Bites:

    So instead of everyone being able to get the most important info by skimming through the announcement in 30 seconds, they'll have to listen to us talk for 60 fucking minutes, while staring at a blank screen the entire time like complete fucking assholes so they don't miss anything?

    Hmm, I hear there are cheap transcription services online...



  • @blek said in WTF Bites:

    Oh, and another project, one that I actually care about, just announced some major changes, including the schedule for a new major release deployment - over a podcast, and literally no other way. This is how I imagine the decision making process behind that:

    WTF?

    You have a company podcast? Who the hell listens to that?



  • @dkf said in WTF Bites:

    At least it wasn't just announced on a live stream…

    Bosses play Minecraft for hours, and somewhere around 1:45h into it, mention the new product.


  • BINNED

    @cartman82 I know I don't.


  • BINNED

    @izzion said in WTF Bites:

    CON

    0_1481898234169_upload-f2e1d23c-6929-422e-822e-bbd575d70ebc


  • Discourse touched me in a no-no place

    @Luhmann ConsUltaNT


  • Garbage Person

    YouTube app decided to wake me up at four in the morning to notify me that a channel I subscribe to has a new video.



  • Got a new job working with a primarily Visual Basic shop that wants to move its flagship product to C++. So I'm getting to work with COM a lot, as I have to replace modules while keeping interfaces intact. ATL offers a lot of convenience classes and methods to make working with COM less painful. Honestly, it's not too bad, once you start to understand how the MIDL compiler writes the headers and how the ATL class structure works.

    For example, you have CComObject class, which has a handy CreateInstance method so you don't have to do a system call that searches the registry when the class you want to instantiate is in your own project. Of course, COM objects are reference counted, and CreateInstance creates an object with a ref count of 0, so remember to call AddRef immediately upon creation.

    But CComObject::CreateInstance is perhaps a bit too convenient, and maybe you don't want a pointer to the base object, just one to the interfaces the object exposes. Well, CComCoClass has you covered. It also has a CreateInstance method, but it only returns interface pointers, not object pointers. I hope you remembered to call AddRef. Oh, you did? Well, that explains why you were leaking that object then. This CreateInstance gives you an object with a refcount of 1. Isn't that so much more convenient?

    Yes, the documentation doesn't mention this fact. I hope the fact that we omitted to make mention of the reference count was sufficient information to infer that you didn't have to call it. I know, the documentation for the other CreateInstance links to this CreateInstance, and your default ATL object inherits both, but it shouldn't take long to figure it out.


Log in to reply