#development

1 messages Ā· Page 184 of 1

slender glade
#

1 << 1 is screenshots and 1 << 4 is screen recordings iirc

wooden yarrow
#

hm

#

interesting

#

there could potentially be other bitflags then

slender glade
#

there's 4 iirc

#

jevin made me aware of this api and I reversed it later

#

I saw 4 & calls so i assume there's at least 4

#

that or IDA was bugging lol

#

it's kind of crazy that this isn't public considering that a good amount of apps would benefit from this

wooden yarrow
slender glade
#

way harder than anything else

wooden yarrow
#

fr

slender glade
#

QuartzCore if you want to take a stab at it

wooden yarrow
#

dyld?

slender glade
#

Yea

wooden yarrow
#

cool

slender glade
#

it's not called CoreAnimation in dyld i think

#

QuartzCore

#

or smth like that

wooden yarrow
#

alr

#

huh @slender glade

if ( (unsigned int)x_log_hook_p(v84) )
    {
      v85 = " display";
      v86 = "";
      if ( (v83 & 0x100000) == 0 )
        v85 = "";
      v87 = " snapshot";
      if ( (v83 & 0x200000) == 0 )
        v87 = "";
      v88 = " unprotected";
      if ( (v83 & 0x400000) == 0 )
        v88 = "";
      v89 = " protected";
      if ( (v83 & 0x800000) == 0 )
        v89 = "";
      v90 = " inhibit-cloning";
      if ( (v83 & 0x1000000) == 0 )
        v90 = "";
      v91 = " occlusion-detection";
      if ( (v83 & 0x2000000) == 0 )
        v91 = "";
      v92 = " secure";
      if ( (v83 & 0x4000000) == 0 )
        v92 = "";
      if ( (v83 & 0x8000000) != 0 )
        v86 = " display-stream";
      v15 = x_log_(0LL, "(disableUpdateMask%s%s%s%s%s%s%s%s)", v85, v87, v88, v89, v90, v91, v92, v86);
    }
#

is this not it (need to shift the bits)

#

in CA::Render::Layer* CA::Render::Layer::show(CA::Render::Layer *this, const CGAffineTransform *a2, __int64 a3)

slender glade
#

YES

#

way shorter when I re'd it

#

but yes that's it wtf

wooden yarrow
#

idk i took this from iOS 17.5 M4 iPad

slender glade
#

oh iOS 17

#

I re'd it at 15

wooden yarrow
#

skull

slender glade
#

i still don't think it changed that much

wooden yarrow
#

seems to have changed then (?)

slender glade
#

maybe I just forgot

#

perhaps

wooden yarrow
#

so then if this is the same and the bits are shifted

#

it would be snapshot || inhibit-cloning ?

slender glade
#

I think so

#

I should run it

#

i'll try condense that into a c func rn

wooden yarrow
#

making display start at (1 << 0)

wooden yarrow
#

no it's prob just passed into the function that way

#

I mean maybe if you specified structs

#

it would give u the correct shifts

#

but

#

cba trol

slender glade
#

oh I see

#

@wooden yarrow

#

nothing is printed when(1 << 1) | (1 << 4) is passed in

wooden yarrow
#

shift all the masks by 24 bits to the right

slender glade
#

oh ur right

#

im rart

wooden yarrow
#

fake...

slender glade
#

<:

slender glade
wooden yarrow
#

all

slender glade
#

yea true

#

@wooden yarrow got occlusion-detection

wooden yarrow
#

wb (1 << 1)

#

wtf

slender glade
#

1 << 1 alone is occulusion detection

wooden yarrow
#

oh

#

what

slender glade
#

1 << 4 is nothing

wooden yarrow
#

??

#

ok maybe shifted too much

#

bc

slender glade
wooden yarrow
#

occulusion detection is supposed to be like

#

way higher

slender glade
#

yea maybe i did smth wrong

wooden yarrow
#

wait i'm a dumbass

#

the correct shift is 20

#

lmao

#

me when i can't math

slender glade
#

šŸ’€

#

( snapshot inhibit-cloning)

#

yup

#

looks correct

wooden yarrow
#

hm yeah so what the hell is inhibit-cloning

slender glade
#

im assuming screen rec

wooden yarrow
#

also what the hell is occlusion-detection doing there

#

lmao

#

that's like

#

3d vision

#

blocking

slender glade
#

maybe added for visionOS?

wooden yarrow
#

hmm

#

maybe

slender glade
#

i wonder what's printed if i pass in 0

#

one sec

#

oh nothing

#

not even display?

wooden yarrow
#

i mean

#

then all of the bits are 0

#

which means

#

nothing disabled

#

which is the default

#

if you pass in 1 you get display

#

(or atleast, you should)

slender glade
#

true...

#

(1 << 1) | (1 << 4) | (1 << 2) | (1 << 3); produces

#

( snapshot unprotected protected inhibit-cloning)

wooden yarrow
#

why did apple include unprotected and protected

#

aren't they opposites of each other

slender glade
#

i thought that like

#

0 by default would be unprotected

wooden yarrow
#

yeah

#

apparently apple is weird tho

#

idk

slender glade
#

I'm interested in occlusion detection now

slender glade
serene hawk
#

great read!

native relic
#

I’m a bit frustrated with hackingtosh, looking to get a Macbook to develop iOS tweaks. Is there a minimum age MacBook/MacOS required for developing iOS 16+ rootless tweaks?

serene hawk
orchid fulcrum
#

You can also use theos with wsl or linux

native relic
#

Unfortunately you can’t compile with WSL and the latest SDKs anymore

hasty ruin
#

Yeah tbh I’d just get an m1 mba

native relic
#

I got my tweaks compiling with VMWare but the whole experience is super buggy

fading shell
#

Setup takes all in all (with downloads etc) maybe 3 or 4 hours

main apex
weary heath
#

great read, TIL using private APIs is as easy as obfuscating with b64 lol

atomic girder
#

do anyone have a neat way of showing alerts that wont get hidden/overriden by controllers doing fuckery? im balding

void promptForSettings(void (^completion)(NSString *settings)) {
    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Enter Settings"
                                                                             message:@"Please enter your settings in json format."
                                                                      preferredStyle:UIAlertControllerStyleAlert];

    [alertController addTextFieldWithConfigurationHandler:^(UITextField *textField) {
        textField.placeholder = @"Settings";
    }];

    UIAlertAction *submitAction = [UIAlertAction actionWithTitle:@"Submit" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        UITextField *settingsTextField = alertController.textFields.firstObject;
        NSString *settings = settingsTextField.text;
        completion(settings);
    }];

    [alertController addAction:submitAction];

    dispatch_async(dispatch_get_main_queue(), ^{
        UIViewController *rootViewController = [UIApplication.sharedApplication.keyWindow rootViewController];
        if (rootViewController.presentedViewController) {
            [rootViewController.presentedViewController presentViewController:alertController animated:YES completion:nil];
        } else {
            [rootViewController presentViewController:alertController animated:YES completion:nil];
        }
    });
}
hasty ruin
wooden yarrow
#

also why are you coding on your iPhone frcoal

#

do u not have your laptop with you

hasty ruin
#

nah

wooden yarrow
#

damn

wooden yarrow
#

actually

sonic totem
wooden yarrow
#

:/

#

suffering from the recent cracking of nexus drm

hasty ruin
hasty ruin
wooden yarrow
#

i am simply willing it into existence .

hasty ruin
#

????

native orbit
hasty ruin
orchid fulcrum
#

is there a way to spawn debugserver on jailed 17.4 without xcode ? maybe with personalised developer disk images

placid kraken
native orbit
#

inb4 people abuse this and they remove it

radiant idol
#

wait what

#

is that new

cloud yacht
#

I mean you could upload pictures to the readme and your pfp so I'm sure they have a way to moderate background pictures

restive ether
placid kraken
#

its also really hacky

radiant idol
#

w

#

ew

placid kraken
placid kraken
#

but it doesnt

#

you can only style the unicode element

#

you cant style anything around it

radiant idol
placid kraken
#

i.. can?

#

it only stops working when you try to preview the readme while on the repo

faint stag
placid kraken
#

and i just fixed that

faint stag
orchid fulcrum
faint stag
#

because it quite literally just executes python -m as a subprocess

#

after the import

orchid fulcrum
#

python in llvm directory somehow became the default :/ it shows the same version even after i run the official updater

#

i guess this is an env variable issue

placid coral
#

I reversed this a while ago, Legizmo uses it

placid kraken
#

WHY CANT GITHUB ALWAYS BE LIKE THIS

reef trail
placid kraken
#

why do you need to take advantage of a stupid bug in their latex parser to get image backgrounds on profiles

reef trail
#

i didnt even notice it lol

placid kraken
#

or anywhere really

#

this works anywhere with a readme

reef trail
#
\ce{$\unicode[goombafont; color:red; z-index: -1; position: fixed; top: 0; left: 0; height: 100%; object-fit: cover; width: 100%; opacity: 0.2; background-size: cover; background-image: url('https://github.com/acquitelol/acquitelol/blob/main/images/furina.png?raw=true%27);]{x0000}$}

how tf does that work

placid kraken
#

its an empty unicode character with css

#

i call it a pesb

#

partial element style bypass

#

because you cant modify all of the styles on the page

#

only the styles of that unicode element

#

the styles of anything like <h1> are sanitized to prevent.. well.. this

reef trail
#

but latex isnt?

placid kraken
#

seemingly no

reef trail
#

i wonder if xss is possible..

placid kraken
#

this was apparently introduced a month ago

reef trail
#

does gh have a bug bounty program?

placid kraken
#

even if you can embed any image there, you cant run onerror you dont get the entire html element

#

you just get the css of it

reef trail
#

i mean the image url is handled locally so maybe you could run an api endpoint

#

not really xss?

#

but still bad

placid kraken
reef trail
#

thats what i mean

placid kraken
#

its just a plain background-image: url('abc')

reef trail
#

its handled client side

placid kraken
#

oh i see what you mean

reef trail
#

auto star gh readme could be funny

placid kraken
#

holy shit wait whats the endpoint for that

#

wait would that even work

#

isnt starring a POST

#

or PATCH

#

url() would be GET

reef trail
#

star is post yes

#

but im checking to see if css url can run post endpoints too

placid kraken
#

you cant exactly post in a css image

#

thats literally not what its designed for

reef trail
#

no ofc not but theres always weird things added in spec

#

https://github.com/user/repo/star is the post req to star btw

placid kraken
#

i figured

reef trail
#

mightve just given you access to my gh lol

placid kraken
#

what

reef trail
#

i leaked some tokens

placid kraken
#

i.. dont use a message logger?

hasty ruin
#

@torn oriole snipe please

faint lionBOT
#
RUGMJ (pinnacle dev) deleted a message

nvm theres tokens involved

reef trail
reef trail
placid kraken
#

just regenerate the tokens?

hasty ruin
reef trail
cloud yacht
#

I mean if you can get a token and send it anywhere you could access, that's a big

#

My guess is probably no

grim sparrow
#

so everything EXCEPT these

reef trail
#

how do i refresh them

grim sparrow
#

if you log out it'll revoke that token

shrewd moth
#

Which device opa said randomly panic on iOS 16?

worldly sundialBOT
#

Subdivisions

Rush • Signals

faint stag
#

@orchid fulcrum probably entitlements idk

#

Both app store and enterprise get more

orchid fulcrum
#

forgot to include substrate in sideloadly thats why it crashed. i managed to change bundleid so nevermind thank you for the help

#

no clue why this happens though 😦

#

it is signed with dev cert so it should have the get-task-allow but maybe sideloadly messes with that

placid kraken
#

i tried to program something that renders to the screen

fn deref(Pointer size, ...) -> Word {
    #__MANUAL_RETURN__#;
    #%deref.val =w loadw %size.1#;
    #ret %deref.val#;
}

fn c_rand() -> Long {
    Long res = rand();
    return res;
}

fn random(Long lower, Long upper) -> Long {
    return (c_rand() % (upper - lower + 1)) + lower;
}

pub fn main() {
    String chars = "abcdefghijklmnopqrstuvwxyz123456789";
    Long scale = 1;
    Long rows = strlen(chars) * scale * 2;
    Long cols = strlen(chars) * scale;

    srand(time(0));

    while (true) {
        for i = 0 to rows {
            for j = 0 to cols {
                Long offset = random(0, strlen(chars) - 1);
                printf!("%c", deref(chars + offset));
            }

            printf!("\n");
        }

        printf!("\033[%ldA\033[%ldD", rows, cols);
    }
}
#

oh toggled is actually not even necessary anymore

faint stag
placid kraken
faint stag
orchid fulcrum
orchid fulcrum
faint stag
#

if you have an actual cert you can bypass that

orchid fulcrum
#

right, i have an ad-hoc cert but i need get-task-allow. my goal is to use lldb to debug the app

faint stag
#

yeah then you'd need another tool to sign the ipa with your cert

#

rather then going through apple id

orchid fulcrum
#

i mean changing the bundle id seems like it does the trick

faint stag
#

fair enough

void fjord
#

Hey was hoping someoone could help me again real quick lol, I went to download xcode to try and give entitlements to a ipa that I was showed in here by some cool people but I just saw that you need a mac for xcode and honestly its kinda above my level of understanding right now my head hurts. is it possible that one of you can do the no sandbox entitlement on a ipa for me?

orchid fulcrum
#

it doesn't work like that, you need to either be jailbroken or have trollstore to use custom entitlements

void fjord
#

Yea Im both lol

orchid fulcrum
#

then even tools like trollsign would help you do that

void fjord
#

the ipa for some reason after jailbreak cant leave its sandbox due to im assuming the built in file browser it uses vs going through the files app

#

ahh okay I figured there was something easier I just wasnt aware

#

Thank you

placid kraken
radiant idol
#

fix that

placid kraken
#

i will once i figure out how to parse it

faint stag
#

just ldid

torn oriole
#

Who’s the gayass

#

Who deleted that

hasty ruin
torn oriole
#

Show yourself

main apex
#

Well guess I’m learning swift now since new mac and apple killing objective-c :(

void fjord
#

I think im missing something lol

#

I got Apple file conduit 2, I got ldid from sileo, and I got the updated trial version of imazing. The root remains loooping indefinetly

void fjord
main apex
main apex
placid kraken
#

i didn’t think apple would actually kill objc

radiant idol
#

wait Lillie is being serious?

#

Whar

placid kraken
#

idk

#

it’s probably satire but i’m playing along

fading shell
restive ether
#

not that you should ever use it…because it’s a security hole

#

go use rsync or sftp or whatever

void fjord
#

Does it matter where I put the key or can I put it at the top or bottom?

restive ether
#

order is irrelevant

#

it just needs to be formatted correctly

void fjord
#

Thanks!

#

Ok I just added it to the top

restive ether
#

i think that should work

#

i’d be surprised if it didn’t

native dune
#

Yeah that should work fine

void fjord
#

Only thing is that its been installing since then lol gonna retry

void fjord
#

okay so I went back and installed the edited ipa via trollstore , it installed pretty quickly but the app just crashes

void fjord
#

Im testing out the original ipa i edited first to see if that installs and runs correctly before I say its something wrong with the edit

torn oriole
#

I’m not sure if it cares but the indentation is messed up on your true key

void fjord
#

Okay yea the original unedited ipa installs and opens fine, how do I do the crash logs

#

ahh yea I definetly just pressed space a few times let me try and fix that syntax

torn oriole
#

Search for your app name

void fjord
#

ok let me pull them up

native dune
void fjord
void fjord
void fjord
void fjord
#

I am going to return to this lmao

rugged barn
#

How does one compile golang code to an iOS binary? Do I need to use theos?

wooden yarrow
#

that's like

#

the first time I hear of this

wooden yarrow
#

there are Unsafe pointers in swift

slim bramble
wooden yarrow
#

yeah because it tries to not make your program crash

#

troll

fading shell
wooden yarrow
torn oriole
sonic totem
torn oriole
#

The fuck

sonic totem
#

Idk which keys they’re scraping

#

But uhh

main apex
sly knoll
#

what is the point of using std::popcount since __builtin_popcount faster

wooden yarrow
#

__builtin_popcount is a compiler extension

#

std::popcount i think should be in the standard

timid furnace
#

given it's in the std namespace

#

i hope so

wooden yarrow
#

std::experimental isn't

#

so

#

also std::tr1

timid furnace
#

Oh

#

Scam

kind herald
sly knoll
wooden yarrow
#

POPulation COUNT

#

it basically just means

#

in a given integer

#

how many bits set to 1

main apex
#

We aren’t even friends on discord, lmao

wooden yarrow
#

bro

#

this is for x86(_64)

#

you're a m

native orbit
#

any good way to check if a bin is in the dsc for ios 13 and below? (dyld_shared_cache_contains_path didn't exist yet)

gentle grove
#

captinc not be an obnoxious member of #development challenge (hard)

hasty ruin
#

i see no issue

blazing warren
#

W3n et4 jelbrek ios 18 @grave sparrow

placid kraken
placid kraken
#

is this supposed to be permanent or

#

because if it isn’t you can always use lldb i think

void fjord
#

Hey guys, I had someone tell me to add [platform-application] as a entitlement as well as [com.apple.private.security.storage.AppDataContainers] in order to fix a issue I was having earlier, how do I add platform application?

#

I added the <key>com.apple.private.security.no-sandbox</key> <true/> so would I do <platform-application> <true/>

orchid fulcrum
#

yes

void fjord
#

ok cool and then below that I add <key>com.apple.private.security.storage.AppDataContainers</key> <true/>

#

<platform-application>
<true/>
<key>com.apple.private.security.storage.AppDataContainers</key>
<true/>

#

or

#

<key>platform-application</key>
<true/>
<key>com.apple.private.security.storage.AppDataContainers</key>
<true/>

orchid fulcrum
#

2nd one

restive ether
#

woke

void fjord
#

Ok so I tried the second one and the app did not crash but I did not add the sandbox line so I still could not access that file path now Im going to try it with the sandbox line

#

So there’s something wrong with giving it no sandbox as it just crashes.

#

This crashes

#

But this doesnt

sonic totem
#

@unkempt magnet do you know why fileglob->fg_data may be 0? I’m trying to implement getVnodeAtPath for iOS 14, I’ve checked all my offsets (they’re correct) but I can’t figure out why it is zero all good, I’ve figured it out

#

I’ve got a file descriptor for the file, so it should be open and in my proc struct as usual

#

chdir also does not work as I cannot chdir to the path of my binary

placid kraken
#

im thinking of starting a completely new language building on what ive learned so far

#

lmao

#

i will make the most minimal syntax ever

#

like for real this time

#

imagine this

main(int arg1) int {
    int a 5;
    int b 10;
    int res a + b;

    if res > 20 printf("yay")
    else printf("nay")

    return 0
}
#

no =

#

no brackets

#

ok well it wont be completely new, im basically just gonna make a new branch and start from scratch

#

and i also wanna try compiling for llvm ir instead of qbe ir

orchid fulcrum
placid kraken
#

well i found a way to make it oh so much less readable

#

introducing

#
main(a 5, b 10) {
    res a + b > 20 ? fmt.log("yay") : fmt.err("noo")
    return 0
}
``` hell
#

✨

orchid fulcrum
#

Assigns res the sum then compares it with 20 right

#

I am good with c thanks šŸ˜‚

placid kraken
#

if im gonna actually make some syntax itll probably be like this maybe?

use std

info {
    i32 first
    i32 second
}

int32 add(ptr<info> arg) {
    return (*info).first + (*info).second
}

int32 main() {
    info data = {
        first: 5
        second: 10
    }

    log("%d\n", add(&data))
    return 0
}
#

maybe???

#

ive thought really hard about it this time

rugged barn
#

Ive compiled a golang binary for iOS using:

CC=$(pwd)/clangwrap.sh env CGO_ENABLED=1 GOOS=ios GOARCH=arm64 go build -ldflags "-s -w" -o ./main_darwin ./

However when I try and run it I get

- zsh: killed  ./"main_darwin"
#

Also when trying to sign it I get

- ldid: Unknown header magic
- Are you sure that is a Mach-O?
#

I built the binary on my m series mac, and im trying to run it on my iPad running iOS 16.

#

This is my first time compiling for iOS, so I dont really know

visual meadow
#

Send the command you used

placid kraken
radiant idol
#

ok but why ptr<info>

#

Like what does that mean

#

Why not just info *

placid kraken
#

ptr<info> makes more sense to me idk

radiant idol
#

But you use * elsewhere

#

Besides, * is the universal symbol for a pointer

placid kraken
#

dereferencing is different to declaring its a pointer but you make a good point

rugged barn
visual meadow
#

ldid -Sent.xml ./main_darwin

#

Do that and it should work

rugged barn
#

could there be a problem with my ent.xml?

visual meadow
#

The binary is owned by root probably

#

Just change the owner of the file or run ldid with sudo

rugged barn
#

Is this a sining issue? Or a compiling issue?

restive ether
#

did you actually give it entitlements?

visual meadow
rugged barn
visual meadow
#

Put it somewhere in /var/jb

rugged barn
#

alright

rugged barn
#

no way

#

thanks for helping me

restive ether
#

yeah i mean it’s not that difficult to build go packages on a jailbreak

#

the whole go package manager is there

#

or whatever they do

rugged barn
#

yeah. Ive just never done it before.

#

So it is possible to target older versions of iOS?

#

Like armv7

restive ether
#

yeah

rugged barn
#

alright, do I have to use an older sdk?

restive ether
#

you can probably just use whatever one is on the theos github

rugged barn
#

ill give it a shot

#
-go: unsupported GOOS/GOARCH pair ios/arm

Not a great start šŸ˜“

#

I thought I read somewhere that go doesnt support armv7 anymore and I have to use go 1.14? not sure if thats true

restive ether
#

oh if that’s the case i guess

hasty ruin
#

what do you intend to even support

restive ether
#

my great grandfathers A4

cloud yacht
#

whitespace significant language's are the worst

placid kraken
#

inline nothing, if you want multiple lines wrap in {}

cloud yacht
#

tbh I've been liking the way lua does it

placid kraken
#

with end?

#

i like that too but i feel like it would be hard to parse

cloud yacht
#

Yeah but also else or elseif can end them

#

I don't think it would be harder to parse than braces

#

Have something to signify the end of the if part (lua uses then) and then you just have end as a keyword

#

Idk I don't write languages but from what I've heard, lua is one of the easier languages to parse

#

Bash if also similar to this with the fi

faint stag
#

do we just not know about ternary conditions

rugged barn
# harsh junco why would you want armv7

Because I have an older Apple TV that I want to run a super simple discord bot on. The discord bot just starts up another PC I’m using as a Minecraft server.

I want to use the Apple TV because

A) I have it lying around and might as well use it

B) My raspberry pi is in use right now for other things

torn oriole
#

AppleTVware

#

Knew that would summon whitetail

frail cedar
frail cedar
torn oriole
frail cedar
#

i was replying to something i know because it fucked me over during spartan development

torn oriole
#

I’m assuming a 3rd gen

#

Just a shot in the dark

frail cedar
#

swift 4.2 yes

restive ether
frail cedar
rugged barn
torn oriole
frail cedar
#

oh

#

alright

#

so

#

step 1: downgrade it to apple tv software 5.3

#

aka ios 6.1.4

#

i hope you like objective c

#

you now have jailbroken apple tv running ios 6. it's basically an iphone 4 but worse

cloud yacht
#

the iPhone 4 runs iOS 7

frail cedar
#

yes so does the tv 2

#

but you cant untether jb latest tv software on the tv 2

#

so we downgrade to 5.3 (ios 6.1.4 based)

cloud yacht
#

is the tv 2 the one I have?

frail cedar
#

idk

torn oriole
frail cedar
#

to make command line binary

#

do whatever you want with this

#

it will be objective c unless you want to deal with old swift (don't)

rugged barn
#

Hmm

frail cedar
#

if a library supports ios 6, it supports tv 2 on 5.3

#

because tv software 5.3 is actually ios 6 just with like all the UI ripped out and a webapp shoved in its place

rugged barn
#

Oh the TV UI is a web app🤢

frail cedar
#

yes

#

sort of

#

but mostly yes

cloud yacht
frail cedar
#

thats a tv 3

#

revised model

#

update it to 7.9

torn oriole
#

Raagh I love frontrow

frail cedar
#

thanks

rugged barn
#

Was hoping go would work

frail cedar
#

it has to compile to an armv7 mach-o

cloud yacht
frail cedar
#

with an ios 6.1 sdk

#

however you do this

#

idk up to you

#

i personally use objc or swift

torn oriole
frail cedar
torn oriole
#

Surely pull logs

#

Idk how to pull logs with old tv’s troll

cloud yacht
#

Probably cause it's jailbrookeb

frail cedar
#

yea

torn oriole
#

Me when ota binaries renamed

rugged barn
torn oriole
#

Probably

cloud yacht
#

What's even the benifit of updating it?

frail cedar
#

79 > 74

rugged barn
frail cedar
#

xcode 4.6.3 will have it

rugged barn
#

Alright

faint stag
frail cedar
#

ldid -S binary

cloud yacht
#

How would I even plug this thing into my computer to update it?

frail cedar
#

the micro usb port

rugged barn
#

Ugh I have to remember the link to download old xcodes versions

frail cedar
faint stag
#

lol

frail cedar
#

it lists like all the sdk versions

torn oriole
frail cedar
#

i love xcodereleases i have 7 xcode versions downloaded

cloud yacht
#

Which one?

#

Ethernet?

frail cedar
#

no.

torn oriole
#

my guy look under the hdmi port

frail cedar
#

spot the USB port

cloud yacht
#

Oh it was hiding

torn oriole
#

i need me that one slim micro usb cable that can let me plug in both hdmi and the micro usb cable

#

i forgot where to find it

frail cedar
#

i have a slim hdmi cable

faint stag
#

or a right angle one?

#

lol

torn oriole
cloud yacht
#

Just solder wires from the pins to an hdmi cable so it doesn't get in the way

torn oriole
#

i wanna usb-c mod an apple tv tbh

#

but sadly the hdmi and microusb are "one port" at a motherboard level

#

so its a bit iffy

cloud yacht
#

MagSafe mod a Apple TV TrollFront

rugged barn
#

403 forbidden why 😭

frail cedar
torn oriole
rugged barn
#

I did

#

Trying to download Xcode

frail cedar
#

i think i had to do that

#

old version of xcode

rugged barn
#

Ok

torn oriole
#

jesus christ

rugged barn
torn oriole
#

yeah but its funnier

cloud yacht
#

Ok but I can anyways

rugged barn
#

Fair

cloud yacht
#

ok its not decting it

#

let me see if this cable works

torn oriole
#

power only cable trol

cloud yacht
#

probable is

#

I just have a bag of cables so let me pull that out

#

this one says logitech so it probably has data

#

oh it just shows up

torn oriole
#

old apple tv

harsh junco
#

Go 1.14uhh

rugged barn
#

I’m sure it’s fine

cloud yacht
#

should I also erase this when I update?

#

intresting it doesn't use the appletv versions on here

frail cedar
#

correct, those are "marketing versions" and only in the Info.plist

cloud yacht
#

but the build matches the one listed on the appledb

frail cedar
#

each TV Software version for the tv 2 and 3 are based off ios versions

cloud yacht
rugged barn
#

Give me 1 good reason why Apple

#

Well it’s fine right, I just need the SDK

cloud yacht
#

wow my tv is now stuck in recovery

torn oriole
#

Excellent

cloud yacht
#

yeah I tried restoring with iTunes as well and its still stuck in recovery

acoustic imp
frail cedar
#

i know this already

acoustic imp
#

like why jus why

#

what do u even use them for ?

cloud yacht
#

No way they actually had the pop up to setup your device on this Apple TV

#

Doesn't work on modern iOS anymore sadly

#

Also I don't think it was a recovery loop I think it just boots to recovery if plugged into a computer

main apex
#

Does anybody here know Orion?

trail venture
#

any of yall know what im doing wrong? im trying to link against irecovery but -llibirecovery isnt working

#
collect2: error: ld returned 1 exit status```
#

its not just -lirecovery either, i have it installed to /usr/local/lib

#

fixed it, just needed to add -1.0

rugged barn
main apex
#

Cut off from what Espeon_hmm

#

If you injure a cat, everybody gonna be hunting you down, lol

void fjord
#

Should every single app crash be recorded in the system analytics log? The app I was working on for entitlements kept crashing upon opening and when I typed in the name it was nowhere in there. Whats a good way to see why crashes happen?

#

Perfect thank you!

grave orchid
#

so do i use springboard for a ls clock tweak?

hasty ruin
rugged barn
#

@frail cedar (sorry for ping but you seem to be an expert in this) Is it possible to replace the default Apple TV UI to load a custom executable instead?

frail cedar
#

no

#

you can use a launchdaemon though

#

launchd on ios is basically the same as launchd on macos, same file structure n stuff

#

make sure file permissions and owners are right, launchctl load and launchctl start

frail cedar
hasty ruin
grave orchid
kind herald
placid kraken
#

the fact its stored into a variable and then that variable is checked for the condition

sly knoll
main apex
hasty ruin
main apex
placid kraken
#

see whenever i say this i get 1984ed

#

smh

hasty ruin
placid kraken
placid kraken
#

#unknown smh

placid kraken
#

when do i get orange name chat

hasty ruin
placid kraken
#

oh

main apex
native orbit
#

buy 100 copies of rune for entry

placid kraken
#

my point still stands

main apex
placid kraken
hasty ruin
#

Flora users

grave orchid
#

hello orange names of kirbistan

#

i’m gonna ask like 2000 questions per day

placid kraken
main apex
lime pivot
#

šŸ™ƒ

wooden yarrow
#

the land of the kirbs

grave orchid
#

i thought it was only me

torn oriole
#

Curbistan or something idk I don’t live in Australia

placid kraken
grave orchid
grave orchid
main apex
grave orchid
#

leik this?

main apex
placid kraken
#

guys it finally happened.

#
fn ltod(long n) -> double {
    #__MANUAL_RETURN__#;
    #%cast.internal =d ultof %n.1#;
    #ret %cast.internal#;
}

fn fact(long n) -> long {
    if (n <= 1) {
        return n;
    }

    return n * fact(n - 1);
}

fn get_euler_number() {
    double res = 2.0;

    for long i = 2 to 12 {
        res += 1.0 / ltod(fact(i));
    }

    return res;
}

pub fn main() {
    double n = get_euler_number();
    printf!("e = %.20f\n", n);

    return 0;
}
#

lowercase types.

#

i need to make actual casting syntax now lmao

#

instead of the ltod shit

wooden yarrow
#

raw ir

placid kraken
#

yes

#

because theres no type convesion syntax

#

and i needed to convert the result from factorial into a double

#

in the IL file it literally just puts

function d $ltod(l %n.1) {
@start
    %cast.internal =d ultof %n.1
    ret %cast.internal
}
wooden yarrow
#

lmao

#

also can u not do something like multiply a long by like 1.0 to implicitly cast it to a float

#

/double

placid kraken
#

no because it doesnt do a cast it literally just tries to force it to be a different type

#

thats what i need to do AFTER

wooden yarrow
#

so like

#

it just interprets it as a different type?

placid kraken
#

yes lmao

#

if i write

pub fn main() {
    long a = 1000000;
    printf!("%f", 1.0 * a);
}
wooden yarrow
#

like *(type*)&thing casting?

placid kraken
#

it does this

export function w $main() {
@start
    %a.1 =l copy 1000000
    %tmp.3 =d copy d_10
    %tmp.4 =d copy d_10
    %tmp.5 =d div %tmp.3, %tmp.4
    %tmp.6 =d copy %tmp.5
    %tmp.7 =d copy %a.1
    %tmp.8 =d mul %tmp.6, %tmp.7
    %tmp.9.10 =w call $printf(l $main.2, ..., d %tmp.8)
    ret
}
data $main.2 = { b "%f", b 0 }
#

see how %a.1 is defined as a long

#

but in the mul it just kinda says "%a.1 is actually a double tyvm"

wooden yarrow
placid kraken
#

yes

wooden yarrow
#

hm

#

lazy ass compiler troll

placid kraken
#

except it throws a compile time error

wooden yarrow
#

oh

placid kraken
#

it expects the type of copy to be l

wooden yarrow
#

hm surely u just impl it in ur lang to do implicit casts

placid kraken
#

if you ACTUALLY want to cast it you need to use the ultof thing

wooden yarrow
#

so you don't have to write ass code

placid kraken
#

after i implement this res += 1.0 / (double)fact(i);

wooden yarrow
#

ah

placid kraken
#

ill implement implicit casting of the operations to the correct type

#

itll follow the rules i mentioned a while ago

#

if one of them is a float, make both of them floats

#

if one of them is a long, make both of them longs

wooden yarrow
#

what

placid kraken
#

you have these operations

wooden yarrow
#

so then

#

what if one is a float

#

and the other is a long

#

both rules apply and you get a longfloat troll

placid kraken
#

single to signed int, single to unsigned int, double to signed int, etc

wooden yarrow
#

trolled

placid kraken
#

i did it

#
fn fact(long n) -> long {
    if (n <= 1) {
        return n;
    }

    return n * fact(n - 1);
}

fn get_e() {
    double res = 2.0;

    for long i = 2 to 12 {
        res += 1.0 / (double)fact(i);
    }

    return res;
}

pub fn main() {
    double e = get_e();
    printf!("e = %.20f\n", e);

    return 0;
}
#

it wasnt that bad to actually compile it

AstNode::Conversion {
    r#type: second_str,
    value,
} => {
    let second = ValueKind::String(second_str).to_type_string().unwrap();
    let (first, val) = self
        .generate_statement(func, module, *value.clone(), ty)
        .unwrap();

    if first == second {
        return Some((first, val));
    } else {
        let conv = self
            .new_var(&second, &format!("tmp.{}", self.tmp_counter), true)
            .unwrap();
        self.tmp_counter += 1;

        func.borrow_mut().assign_instruction(
            conv.clone(),
            second.clone(),
            Instruction::Conversion(first, second.clone(), val),
        );

        return Some((second, conv));
    }
}
#
Self::Conversion(first, second, value) => {
    write!(
        formatter,
        "{}to{} {}",
        if first.is_float() {
            first.to_string()
        } else {
            format!("s{}", first)
        },
        if second.is_float() { "f" } else { "i" },
        value
    )
}
#

now i can do implicit conversions because the basis is there

#

that worked like first try i was so surprised

harsh junco
void fjord
#

Is syslog the steps you take to activate sysdiagnose which is holding the volume and power button? I didnt see anything for syslog on a ipad besides that lol. Also since im on dopamine and its a rootless jailbreak I cant use Cr4shed, should I use derootifier on cr4shed or will that defeat its purpose? Im down to do a rootful jb if it gets me closer

#

Cool appreciate the help, I dont have a mac so Ill go the other route

placid kraken
#

ok i did implicit type conversions @wooden yarrow

#

its not exactly pretty

fn convert_to_type(
    &mut self,
    func: &RefCell<Function>,
    first: Type,
    second: Type,
    val: Value,
) -> (Type, Value) {
    if first == second {
        return (first, val);
    } else if first.is_int() && second.is_int() {
        let conv = self
            .new_var(&second, &format!("tmp.{}", self.tmp_counter), true)
            .unwrap();
        self.tmp_counter += 1;

        let is_first_higher = first.weight() > second.weight();

        func.borrow_mut().assign_instruction(
            conv.clone(),
            if is_first_higher {
                first.clone()
            } else {
                second.clone()
            },
            Instruction::Extension(first, val),
        );

        return (second, conv);
    } else {
        let conv = self
            .new_var(&second, &format!("tmp.{}", self.tmp_counter), true)
            .unwrap();
        self.tmp_counter += 1;

        func.borrow_mut().assign_instruction(
            conv.clone(),
            second.clone(),
            Instruction::Conversion(first, second.clone(), val),
        );

        return (second, conv);
    }
}
#

but it works

#

weight is just this

placid kraken
#

brackets are no longer mandatory !!!!!!!!!!!!!!

#
fn fact(long n) -> long {
    if n <= 1 {
        return 1;
    }

    return n * fact(n - 1);
}
#

its a tiny change but it makes the code easier to read imo

#

you can still include them because itll just parse it like a wrapped statement

#

i also fixed types for constants that are returned by functions

#

it now infers that the literal 1 returned by factorial is a long

#

because the return type is a long

#

it didnt do that before you either had to say

long res = 1;
return res;

or

return (long)1;
``` lmao
placid kraken
#

ltod in that message runs IR code directly

#

C compiles with a bunch of different IRs though no?

#

i see

#

but would the syscalls automatically be parsed for the right arch?

#

ah

#

i der

#

see

#

that sounds about right lmfao

#

im not sure what easier way you could have to do this

#

and you need asm for that???? surely C has primitives to get the current shell environment

#

oh.

#

i thought you were just running like oh ls /dist

restive ether
#

tweaker

placid kraken
#

and THIS is why zefram will never release

#

im not trying to be sarcastic but 8k lines of assembly is basically impossible to maintain

#

you should write your own higher level language to compile to that assembly specifically designed for zefram

native orbit
#

real, cuz u get that fine grain control the compiler sometimes fucks up

visual meadow
#

homepod mini apps lol

placid kraken
#

i agree ther

#

e

visual meadow
#

I need a ddi

visual meadow
#

I'm going to fruit ninja on you

placid kraken
#

y’all will love this mandatory node dependency for compiling elle code

/**
!! THIS FILE IS TEMPORARY !!

* QBE compiles floating point constant data sections with the incorrect name
* This file simply replaces all instances of "Lfp(some number):" with "_Lfp(some number):"
which files this issue.
* The developer of QBE is aware of this and this will probably be fixed in the next release.
*/

const fs = require("fs"); // Necessary because this isn't a module
const inputFile = process.argv[2];
const file = fs.readFileSync(inputFile);

const out = file.toString();
console.log(out.replace(/Lfp(\d+):/g, "_Lfp$1:"));
native orbit
#

fuck sip hash as well

#

writing that in asm was hell

placid kraken
#

@grave sparrow how do you do a regex replace /Lfp(\d+):/g with _Lfp$1: in the terminal for a whole text file because i cannot figure out how

#

ive tried a bunch of different tools

native orbit
#

needed to do runtime string discrims in shc uhhsweat

placid kraken
#

why the fuck does llvm ir contain so much fucking metadata

#

😭😭😭😭

#

80% of the file is just metadata istg

native orbit
#

shit work wonders tho

native orbit
#

but that aint as fun

placid kraken
#

the most i ever wrote in asm was a calculator to do the basic add sub mul div operations on 2 numbers from stdin

#

and that was hell enough

#

im not sure if stuff like atol is pure

#

hang on let me get home first to get to the asm

#

i already have the regex i just need to figure out how to replace it in the file

#

i tried awk and sed and failed but i’ll try again

#

i know yea

#

you need to make joe.txt.tmp, mv, then rm

#

yeah

#

oh well

#

better than needing node and doing it through js

gentle grove
#

for Mac just use gsed instead to be honest

visual meadow
#

why does the homepod have port 53 open and why does it work

void fjord
#

for libimobile im using a guide that states to type a command, connect my device, replicate the crash, and then type ctrl c to exit. that first command I type do I press enter to execute it? I only ask because I ran it and it says that the function is not recognized lol

void fjord
#

so I didnt see a .exe in here to install lol the guide just said to right click the folder and open it with powershell

#

yea I read the github and it only had instructions for ubuntu/linux and nothing for windows lol

#

Yea thats fine I just wasnt sure how they want me to open this smh

steady nest
void fjord
#

I redid it with the dot thats the wrong screenshot but same error

steady nest
#

send screenshot

void fjord
steady nest
#

in the same screenshot type dir command too

void fjord
#

dir command brings up this

steady nest
#

you downloaded the source code

#

not the binaries 😭

void fjord
#

NICE

#

lmaoo

#

whats funny is that I was gonna ask earlier because I ran into this like 2 hours ago but windows decided to take a dump with my screenshots folder. so every time I try to do something I run into another issue lmao.

void fjord
#

actually I think it could be this

steady nest
#

that's not binaries

#

that's source code

void fjord
#

Ah I usually go to releases when I get stuff from github, im searching through the files and not seeing binaries. where is that usually located

void fjord
# steady nest that's not binaries

Ok so I found that the main repo does not have a windows build but someone else has the binaries build for windows on a different github, Thank you!

visual meadow
#

ok so

#

misagent does not exist

#

so sideloading on the homepod is not a possibility

restive ether
#

how do app devs test deployment for homepods lol

void fjord
#

ok so got idevicesyslog to work, but its writing lines of code indefinitely šŸ’€ how do I stop it

void fjord
#

got it, so the idea is to get it to run, immediately recreate the crash and then stop it?

#

lowkey I feel bad for who has to work with this on the day to day there should have been a easier way than a wall of script coming at you every second lmao

void fjord
#

trying to get the crash log for a app that im adding custom entitlements to but wont open after adding the no sandbox entitlement

void fjord
# radiant idol so what are you trying to do

Basically the app Retroarch has a file browser to look for files inside its own folder and it also has the option to start at "/" but it doesnt have permission to go past /private/var as it shows nothing inside of var. Im trying to get it to run unsandboxed and with no restrictions so that it can navigate to the usb device that I have connected to the ipad. I was able to give it no sandbox permissions etc but for some reason it crashes upon opening. Someone online gave me another entitlement to add to it that also gave it access to all data containers on the system and spaen arbitrary binaries and this entitlement works on its own but Retroarch still wont show anything past /private/var and when I add this entitlement as well as the no sandbox entitlement the app wont open and it just crashes.

#

so im thinking that the no sandbox entitlement is the one I need but its causing the app to crash so im hoping that I can see why its crashing with this log

radiant idol
#

Well try accessing the crashlog from Settings > Privacy > Analytics

torn oriole
#

This much is his issue apparently

#

As it doesn’t show up there

radiant idol
#

Hmmm interesting

void fjord
#

yes^

#

its not showing up in there lol

torn oriole
#

Unless the retroarch binary name is different to the app name

radiant idol
#

maybe lldb?

#

idk

torn oriole
#

Which for context, it uses in the crash logs

void fjord
#

I was thinking that as well, so I started typing libretro and just scrolling through the logs with todays date but wasnt seeing it tbh

placid kraken
#

GUYS

#

its a bit squished

#

but its A DONUT

torn oriole
#

THE DONUT

#

YEAAAH

placid kraken
kind herald
#

holy moly a donut .

#

oh my god there's two of them

#

FOUR OF THEM

#

EIGHT OF THEM

placid kraken
kind herald
#

holy moly a donut .

placid kraken
#

oh and uh

#

the code

#
fn deref(pointer size) -> int {
    #__MANUAL_RETURN__#;
    #%deref.val =w loadsb %size.1#;
    #ret %deref.val#;
}

pub fn main() {
    double A = 0;
    double B = 0;
    double i = 0;
    double j = 0;
    double zbuff[4400];
    char b[4400];

    string lighting = ".,-~:;=!*#$@";

    printf("\x1b[2J");

    while (true) {
        memset(b, 32, 4400);
        memset(zbuff, 0, 4400 * 8);

        for j = 0 to 6.28 step 0.07 {
            for i = 0 to 6.28 step 0.02 {
                double c = sin(i);
                double d = cos(j);
                double e = sin(A);
                double f = sin(j);
                double g = cos(A);
                double h = d + 2;
                double D = 1 / (c * h * e + f * g + 5);
                double l = cos(i);
                double m = cos(B);
                double n = sin(B);
                double t = c * h * g - f * e;
                int x = 100 + 120 * D * (l * h * m - t * n);
                int y = 12 + 15 * D * (l * h * n + t * m);
                int o = x + 200 * y;
                int N = 8 * ((f * e - c * d * g) * m - c * d * e - f * g - l * d * n);

                if (22 > y && y > 0 && x > 0 && 200 > x && D > zbuff[o]) {
                    zbuff[o] = D;

                    if N > 0 {
                        b[o] = deref(lighting + N % strlen(lighting));
                    } else {
                        b[o] = deref(lighting);
                    }
                }
            }
        }

        printf("\x1b[H");

        for k = 0 to 1100 {
            if k % 50 {
                printf!("%c", b[k]);
            } else {
                printf!("\n");
            }
        }

        A += 0.004;
        B += 0.002;
    }

    return 0;
}
warped sparrow
#

Make tweaks (or develop anything useful) āŒ
Donut āœ…

#

thats cool af though

#

I saw someone change their terminal colours to red and create a dragon like this and it looked really cool because it was really detailed

placid kraken
#

ive been trying to get the donut to work for so long

#

this is a huge accomplishment for me

#

there weren’t proper implicit type conversions nor could you explicitly convert between types before which made this pretty much impossible to do before today

placid kraken
#

not that i particularly animated this myself i just ported over the donut.c code

warped sparrow
placid kraken
#

probably still cool tho

#

i looked into the math behind the donut spinning and it’s so complicated

#

i could barely understand it

void fjord
#

What would a crash error look like? im looking for <error> but Idk if I should try reading through all of the lines since I cant use Ctrl+F in powershell and dont want to get lost lol

#

so far I see this as the first error since I opened RA

#

but I dont think thats anything

#

It might be this!

#

I think I found the errors guys

warped sparrow
warped sparrow
#

wait I don't think thats like how the donut is made

#

it still looks really cool whatever it is

placid kraken
#

wtf

#

thats so cool

#

genuinely

#

what the fuck

warped sparrow
void fjord
#

@torn oriole I finally got the crash logs you told me to check, would this be the whats causing the crash? its the only major thing im seeing and it repeats multiple times

restive ether
void fjord
#

Ah yea im super blind lol

restive ether
#

turn it off or you have to add a special entitlement

#

<key>com.apple.security.iokit-user-client-class</key>
<array>
<string>RootDomainUserClient</string>
<string>AppleSMCClient</string>
<string>AppleSEPUserClient</string>
<string>AppleNVMeEANUC</string>
<string>IOAVDeviceUserClient</string>
<string>IODPDeviceUserClient</string>
<string>AGXCommandQueue</string>
<string>AGXDevice</string>
<string>AGXDeviceUserClient</string>
<string>AGXSharedUserClient</string>
<string>IOAccelContext</string>
<string>IOAccelContext2</string>
<string>IOAccelDevice</string>
<string>IOAccelDevice2</string>
<string>IOAccelSharedUserClient</string>
<string>IOAccelSharedUserClient2</string>
<string>IOAccelSubmitter2</string>
<string>IOSurfaceRootUserClient</string>
<string>AGXGLContext</string>
<string>AppleCredentialManagerUserClient</string>
<string>AppleHPMUserClient</string>
<string>AppleJPEGDriverUserClient</string>
<string>AppleUSBHostDeviceUserClient</string>
<string>AppleUSBHostInterfaceUserClient</string>
<string>H11ANEInDirectPathClient</string>
<string>IOAVControllerConcreteUserClient</string>
<string>IOHIDEventServiceFastPathUserClient</string>
<string>IOHIDLibUserClient</string>
<string>IOMobileFramebufferUserClient</string>
<string>IOReportUserClient</string>
<string>IOSurfaceAcceleratorClient</string>
<string>IOTimeSyncClockManagerUserClient</string>
<string>IOTimeSyncDomainUserClient</string>
<string>IOTimeSyncgPTPManagerUserClient</string>
<string>IOUserServer</string>
<string>AppleBasebandUserClient</string>
<string>AppleBasebandPCIUserClient</string>
</array>

#

you need this

#

that’s like an ios 14 change, need entitlements for bold text

restive ether
#

the retroarch people should probably have that entitlement for deb installs

#

they probably don’t know about it

void fjord
#

Ah so the bold text is what broke that, I actually found later down the line that it created a crash log.ips i was about to open it

timid furnace
restive ether
#

the power of entitlements

torn oriole
#

Least stupid entitlement

restive ether
#

kind of a weird thing to change so late down the line

torn oriole
#

Fuck you ios 16troll

void fjord
#

literally its at line 2802 from when the App opened at line 100 so

void fjord
restive ether
void fjord
#

I am absolutely satisfied with knowing I did the best that I can. I havent looked at code since college so this hunt brought me back some lol.

void fjord
restive ether
void fjord
#

let me see if it can get into that directory lol

restive ether
#

very good

void fjord
#

Yes im going to send them all of the info, Every tiime I mess with the app I post it in their help incase someone else has the same issue

#

the entitlements fixed it

#

YES THANK YOU IT WORKS

restive ether
#

you should definitely let them know about the bold text thing

#

i guess it’s not an issue for an appstore app, but for a jailbreak it is

void fjord
#

I am letting them know now and im giving you all the credit lol

#

Thank you so much again

restive ether
#

Al Gore Jr is here to save the environment

#

and your apps

visual meadow
#

pros about a jailbreak detection that is open source and is stored in a framework:
rebuild the framework with a version that simply sets the passed bool to true and install said app

restive ether
#

that’s easy to bypass

#

someone here did it

visual meadow
#

idk what i should name it though

faint stag
#

it's getting as bad as android now

#

wait until they add developer mode detection

trail venture
#

its a little busted but i think its starting to function

kind herald
#

ecid leak

#

gonna save blobs now

#

thanks

trail venture
#

np ā¤ļø

#

i should set the --auto-boot=0 thing cause it keeps rebooting out of recovery

#

thats not the right conversion

#

mfw the int wasnt long enough

faint timber
#

thats super rookie

trail venture
faint stag
# trail venture thats not the right conversion

https://theapplewiki.com/wiki/ECID

brother should've read the apple wiki 😭

The Apple Wiki

The ECID (Exclusive Chip Identification also referred to as Unique Chip ID in official Apple terms) is an identifier unique to every unit, or more accurately, to every SoC.
It is 64 bits wide, with either the first 12, 16, or 20 bits set to zero (looks like 00???XXXXXXXXXXX in hex).
It holds a key position in the SHSH Protocol, being one of 2 el...

#

it's a uint64 wyd

trail venture
#

i took the 2 seconds it took to look at irecovery (where im stealing code from)

#

now my whole sha-bang is falling apart cause curl_easy_init() wants to not work (truely dont know but its probably poor memory management)

gentle grove
#

In what way

trail venture
#
zsh: IOT instruction (core dumped)```
trail venture
#

What I know from memory is (I think)

CURL* curl;
curl = curl_easy_init()```
With prints before and after this, I've determined this is where it's failing
faint stag
#

lol

#

the usage is CURL *curl_easy_init();

trail venture
#

Huh

faint stag
#

wait i'm reading it wrong but the usage i sent is correct

trail venture
#

I'm trying to Google again to check but my browser is shutting itself

placid kraken
crisp frost
#

unsigned long long

trail venture
trail venture
granite frigate
#

signed short short

trail venture
#

Here I think it's just doing the work of both of those lines

crisp frost
#

curl_easy* is so easy to hack lol

faint stag
trail venture
#

No point in cleanup if it doesn't do anything in the first place lmao