Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Tei
Feb 19, 2011

Bongo Bill posted:

I � Unicode

haha

Adbot
ADBOT LOVES YOU

Macichne Leainig
Jul 26, 2012

by VG

Bongo Bill posted:

I � Unicode

Volmarias posted:

Mods, new thread title, please

Kilson
Jan 16, 2003

I EAT LITTLE CHILDREN FOR BREAKFAST !!11!!1!!!!111!

omeg posted:

U+FFFD: "REPLACEMENT CHARACTER", or �. :psyduck:

We are switching one of our ancient applications to compile with Java 7 instead of Java 6, and there are a ton of files that no longer compile because they have this stupid replacement character *in comments*.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

ultrafilter posted:

The heaviest book that I've ever seen was a hardcopy of the Unicode standard.

Coding Horrors�: A Hardcopy of the Unicode Standard

Foxfire_
Nov 8, 2010

- iMessage wants to make gifs loop forever, even if the file has a finite loop count
- their copying method accidentally renders the image instead of just copying and runs outside of sandbox
- the rendering library renders based on the actual content, not the claimed filetype
- its implementation of a 90s-era BW pdf compression algorithm for scanning text had an overflow bug that lets you access arbitrary offsets from the image being rendered
- the image parser has no intentional scripting capabilities, but it does let you do some flexible per pixel bit operations (intended for things like "the pixels for this letter/rectangle are a modified copy of a previous one)"
- AND, OR, and XOR are enough to build any logic circuit
- the image being rendered into can be used as a very long tape
- you can build a computer out of the pixel compression steps that reads system memory as input, uses the image as scratch space, and computes offsets to break ASLR
=> Receiving a SMS (but not clicking or running anything from it) let the Saudi government spy on some dissidents

https://googleprojectzero.blogspot.com/2021/12/a-deep-dive-into-nso-zero-click.html

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe
That page also links to "Xerox scanners/photocopiers randomly alter numbers in scanned documents", which I'd never heard of before

Tei
Feb 19, 2011


I fear the day some idiot is going to add machine learning to simple machines. And the only reason they will do that is to have a silver bullet and be able to put "smart" in the name of the product.

Wipfmetz
Oct 12, 2007

Sitzen ein oder mehrere Wipfe in einer Lore, so kann man sie ueber den Rand der Lore hinausschauen sehen.
[deleted, still learning this 'reload before post' thing]

Blue Footed Booby
Oct 4, 2006

got those happy feet

Foxfire_ posted:

- iMessage wants to make gifs loop forever, even if the file has a finite loop count
- their copying method accidentally renders the image instead of just copying and runs outside of sandbox
- the rendering library renders based on the actual content, not the claimed filetype
- its implementation of a 90s-era BW pdf compression algorithm for scanning text had an overflow bug that lets you access arbitrary offsets from the image being rendered
- the image parser has no intentional scripting capabilities, but it does let you do some flexible per pixel bit operations (intended for things like "the pixels for this letter/rectangle are a modified copy of a previous one)"
- AND, OR, and XOR are enough to build any logic circuit
- the image being rendered into can be used as a very long tape
- you can build a computer out of the pixel compression steps that reads system memory as input, uses the image as scratch space, and computes offsets to break ASLR
=> Receiving a SMS (but not clicking or running anything from it) let the Saudi government spy on some dissidents

https://googleprojectzero.blogspot.com/2021/12/a-deep-dive-into-nso-zero-click.html

I was wondering what the XKCD the other day about turing completeness was referencing. :stare:

This is one hell of a loving bug. Jesus.

more falafel please
Feb 26, 2005

forums poster

Blue Footed Booby posted:

I was wondering what the XKCD the other day about turing completeness was referencing. :stare:

This is one hell of a loving bug. Jesus.

I did study an exploit for Gaim? I think? where every byte of the payload needed to pass isalpha(), but since x86 is a terrible old architecture, it's not actually that difficult to build a Turing-complete subset of x86 instructions that pass isalpha(). I think the "exec("/bin/sh")" payload was like 100MB, but there wasn't any limit on the message size.

Zopotantor
Feb 24, 2013

...und ist er drin dann lassen wir ihn niemals wieder raus...

more falafel please posted:

I did study an exploit for Gaim? I think? where every byte of the payload needed to pass isalpha(), but since x86 is a terrible old architecture, it's not actually that difficult to build a Turing-complete subset of x86 instructions that pass isalpha(). I think the "exec("/bin/sh")" payload was like 100MB, but there wasn't any limit on the message size.

It would be extremely hard to find a subset of x86 instructions that is useful but not Turing complete.

Stephen Dolan posted:

It is well-known that the x86 instruction set is baroque, overcomplicated, and redundantly redundant. We show just how much fluff it has by demonstrating that it remains Turing-complete when reduced to just one instruction.
The instruction we choose is mov, which can do both loads and stores. We use no unusual addressing modes, self-modifying code, or runtime code generation. Using just this instruction (and a single unconditional branch at the end of the program to make nontermination possible), we demonstrate how an arbitrary Turing machine can be simulated.

Paper

OddObserver
Apr 3, 2009
I am not sure that's actually a single /instruction/ rather than a single assembly mnemonic.

As a side note, while CISC can theoretically be better than RISC at code density, I am curious as to how well x86 actually does, given how many of its 1-byte instructions are pretty useless for modern code. It does have a sort of interesting property that bit flips often blow up spectacularly, though.

(Obvious comparison is ARM thumb which is optimized for things more modern than 8086).

OddObserver fucked around with this message at 04:06 on Dec 21, 2021

more falafel please
Feb 26, 2005

forums poster

Zopotantor posted:

It would be extremely hard to find a subset of x86 instructions that is useful but not Turing complete.

Paper

'h' is pretty useful, because it's push immediate. 'A' is pretty good padding because it's "inc ecx" which is effectively a NOP most of the time.

Dylan16807
May 12, 2010
Compiling C to printable x86, to make an executable research paper http://tom7.org/abc/

Tei
Feb 19, 2011

Dylan16807 posted:

Compiling C to printable x86, to make an executable research paper http://tom7.org/abc/

in the old good days people would download files from the news://, since is a ascii protocol, these files where codified in 7 bits, so had to be converted with a program into binaries 8 bits

but how you boostrap that? you need a executable to turn 7 bits texts in 8 bits binaries. If you don't have that executable, you can download it from the news, and then... ooops

so people made a uundecoder.com file in 7 bits that you could download from the news:// and then use it to turn alt.sex.xxx into binaries

Tei fucked around with this message at 10:04 on Dec 21, 2021

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

Dylan16807 posted:

Compiling C to printable x86, to make an executable research paper http://tom7.org/abc/

This (excellent) paper has my favourite use of a parenthetical question mark:

quote:

This string is used to test antivirus software, because you can hide this string away inside some file and then see if the antivirus software can successfully find it (?).

For some reason this sent me into fits of laughter the first time I read it. I guess I had never considered how nearly useless that test is.

Rubellavator
Aug 16, 2007

Literally just finished building and pushing releases (an arduous task for my area) with log4j 2.16 to find out there was another vulnerability found and addressed over the weekend. Maybe we should just not have logging.

Polio Vax Scene
Apr 5, 2009



Rubellavator posted:

Maybe we should just not have Java.

ftfy

Absurd Alhazred
Mar 27, 2010

by Athanatos

Rubellavator posted:

Maybe we should just not

ftfy

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Coding Horrors: Maybe we should just not

Carbon dioxide
Oct 9, 2012

pokeyman posted:

This (excellent) paper has my favourite use of a parenthetical question mark:

For some reason this sent me into fits of laughter the first time I read it. I guess I had never considered how nearly useless that test is.

It has a practical use.

It is used by pentesters, when they're testing some business' file upload / cloud storage tooling, to see if they have the most basic of antivirus protections set up.

Bruegels Fuckbooks
Sep 14, 2004

Now, listen - I know the two of you are very different from each other in a lot of ways, but you have to understand that as far as Grandpa's concerned, you're both pieces of shit! Yeah. I can prove it mathematically.

ultrafilter posted:

Coding Horrors: Maybe we should just not

Coding horrors: Let's not and say we did

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

ultrafilter posted:

Coding Horrors: Maybe we should just not

Sagacity
May 2, 2003
Hopefully my epitaph will be funnier than my custom title.

ultrafilter posted:

Coding Horrors: !(we should just)
Opened a merge request: (chore) optimization

2Fast2Nutricious
Oct 4, 2020

Bongo Bill posted:

I � Unicode

do this one first

taqueso
Mar 8, 2004


:911:
:wookie: :thermidor: :wookie:
:dehumanize:

:pirate::hf::tinfoil:

forums dont support unicode titles

repiv
Aug 13, 2009

taqueso posted:

forums dont support unicode titles

code:
Coding Horrors: I � Unicode

Bruno_me
Dec 11, 2005

whoa

Bongo Bill posted:

I � Unicode

Absurd Alhazred
Mar 27, 2010

by Athanatos
What's new Unicode, WOOAH WOAAH WWOAAAAH....

BigPaddy
Jun 30, 2008

That night we performed the rite and opened the gate.
Halfway through, I went to fix us both a coke float.
By the time I got back, he'd gone insane.
Plus, he'd left the gate open and there was evil everywhere.


Had a Unicode coding horror this week. Well the horror was someone with a choice of *nix or Windows for development chose windows but the CI script was choking on commits with Japanese translations of labels because it was in Unicode and the way windows represented it was shock horror not to spec.

necrotic
Aug 2, 2005
I owe my brother big time for this!
Which Unicode spec? You might be getting valid UTF-16 but expecting UTF-8. These are not the same things.

DoctorTristan
Mar 11, 2006

I would look up into your lifeless eyes and wave, like this. Can you and your associates arrange that for me, Mr. Morden?

necrotic posted:

You might be getting valid UTF-16

Still counts as a coding horror

necrotic
Aug 2, 2005
I owe my brother big time for this!

DoctorTristan posted:

Still counts as a coding horror

Won't disagree there. But just saying "Unicode" doesn't communicate much.

Absurd Alhazred
Mar 27, 2010

by Athanatos

necrotic posted:

Won't disagree there. But just saying "Unicode" doesn't communicate much.

Maybe they should call it Multicode, then!

repiv
Aug 13, 2009

It had slipped under my radar until pretty recently but Windows 10 actually supports UTF-8 now, you put a special manifest in your executable and the "legacy ASCII" APIs magically start speaking Unicode

No more UTF-16 bullshit, what a time to be alive :monocle:

BigPaddy
Jun 30, 2008

That night we performed the rite and opened the gate.
Halfway through, I went to fix us both a coke float.
By the time I got back, he'd gone insane.
Plus, he'd left the gate open and there was evil everywhere.


UTF-8 but it was encoded in a Salesforce Metadata xml file for custom labels. Windows is just loving up Japanese characters so now someone not using windows needs to edit those files.

Salesforce is also a coding horror but I have stared into the abyss to long so do not mourn for me.

Ranzear
Jul 25, 2013

I'm for whatever reason reminded of Windows' case insensitivity causing the Perforce client to not commit changes to a file if the casing of the name changed even if the contents of the file were also changed and a bunch of other nonsense, all because the Perforce server was running on linux with case sensitivity.

Looking back, wow what a massively oversold pile of poo poo Perforce turned out to be and I regret ever suggesting it.

Absurd Alhazred
Mar 27, 2010

by Athanatos
Perforce is great! It's wonderful! It's great! I love using it! Love to have utter messes integrating because someone renamed a file!

BigPaddy
Jun 30, 2008

That night we performed the rite and opened the gate.
Halfway through, I went to fix us both a coke float.
By the time I got back, he'd gone insane.
Plus, he'd left the gate open and there was evil everywhere.


I used SVN and CVS before GIT was a thing and in my mind that is remembered as the dark times.

Adbot
ADBOT LOVES YOU

HappyHippo
Nov 19, 2003
Do you have an Air Miles Card?
Best part of my recent job change is I no longer have to use Perforce

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply