Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

additional recursive operations in afc protocol #47

Closed
emonti opened this issue Jan 7, 2014 · 2 comments
Closed

additional recursive operations in afc protocol #47

emonti opened this issue Jan 7, 2014 · 2 comments

Comments

@emonti
Copy link

emonti commented Jan 7, 2014

I did some reversing in the afc server binary for iOS 6.x and 7.x as a result of an issue opened up on the ruby idevice bindings -- (adamely/idevice#1) -- this had to do with recursive AFC operations.

There appear to be several AFC_OP_ constants that are not defined/implemented in libimobiledevice, but present in the afc protocol (at least the versions I looked at) -- wonder if these were intentionally passed over for some reason, or if not... would it be worth adding them?

using the same basic naming convention and comments format as in src/afc.h

AFC_OP_PATH_CONTENTS_SIZE      = 0x00000021, /* GetSizeOfPathContents */
AFC_OP_REMOVE_PATH_RECURSIVELY = 0x00000022, /* RemovePathAndContents */
AFC_OP_OPENDIR         = 0x00000023,    /* DirectoryEnumeratorRefOpen */
AFC_OP_OPENDIR_RESULT  = 0x00000024,    /* DirectoryEnumeratorRefOpenResult */
AFC_OP_READDIR         = 0x00000025,    /* DirectoryEnumeratorRefRead */
AFC_OP_CLOSEDIR        = 0x00000026,    /* DirectoryEnumeratorRefClose */

Note also: there's these that were also apparently not added:

AFC_OP_FILE_HASH       = 0x0000001D,    /* GetFileHash */

...

AFC_OP_FILE_HASH_RANGE = 0x0000001F,    /* GetFileHashWithRange */
AFC_OP_FILE_SET_IMMUTABLE_HINT = 0x00000020, /* FileRefSetImmutableHint */
@FunkyM
Copy link
Member

FunkyM commented Feb 5, 2014

We're aware of the new operations, simply not added/implemented them yet.
Furthermore one needs to ensure that invocations on <= iOS 5 are properly handled.
Patches welcome.

@FunkyM
Copy link
Member

FunkyM commented Oct 2, 2014

RemovePathAndContents is now implemented in git master.
The other operations are not in the scope of this ticket request but will probably be also implemented soon. If needed please create a ticket for these.

@FunkyM FunkyM closed this as completed Oct 2, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants