Skip to content
Permalink
Browse files

Added documentation and licensing information.

  • Loading branch information...
mcolyer committed Jul 31, 2008
1 parent d4c2808 commit 47d60e2b9f8ddec18107cee21e046cd4df50fdef
Showing with 1,100 additions and 16 deletions.
  1. +4 −0 AUTHORS
  2. +340 −0 COPYING
  3. +502 −0 COPYING.LESSER
  4. +47 −0 README
  5. +17 −2 src/AFC.c
  6. +15 −1 src/AFC.h
  7. +20 −0 src/ifuse.c
  8. +18 −2 src/iphone.c
  9. +18 −2 src/iphone.h
  10. +17 −2 src/lockdown.c
  11. +15 −0 src/lockdown.h
  12. +17 −2 src/main.c
  13. +0 −1 src/main.h
  14. +15 −1 src/plist.c
  15. +17 −2 src/plist.h
  16. +19 −0 src/usbmux.c
  17. +19 −1 src/usbmux.h
@@ -0,0 +1,4 @@
Zack C.
Jonathan Beck
Matt Colyer
Martin Aumueller
340 COPYING

Large diffs are not rendered by default.

Large diffs are not rendered by default.

47 README
@@ -0,0 +1,47 @@
INSTALLATION
================================================================================

You must have:
libgnutls-dev
libusb-dev
libfuse-dev (and the associated kernel modules)
libglib2.0-dev
libxml2-dev
make
autoheader
automake
autoconf
gcc

IMPORTANT: You must edit src/ifuse.c and src/main.c and replace your HostID
from the plist file stored by iTunes. You can find these lines because they are
currently commented out. In Windows this file is located in:

C:\Documents and Settings\Your Username\Application Data\Apple Computer\Lockdown\<device serial number>.plist

IMPORTANT: You must also have a public certificate for the device located in
the root directory of the source named hostcert.pem. This can also be extracted
from the above file.

To compile run:
./autogen.sh
./configure
make

USAGE
================================================================================

There are currently 2 executables iphoneclient and ifuse, located in src/.

iphoneclient is a basic commandline interface, it just runs a few various operations.

ifuse is a Fuse filesystem which allows you to mount your iPhone to a directory
like this:

./src/ifuse mountpoint

To unmount:
umount mountpoint

Currently the ifuse filesystem is read-only, until the development has
progressed further.
@@ -1,6 +1,21 @@
/*
* AFC.c -- contains functions for the built-in AFC client.
* Written by FxChiP
* AFC.c
* Contains functions for the built-in AFC client.
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include "AFC.h"
@@ -1,7 +1,21 @@
/*
* AFC.h
* Defines and structs and the like for the built-in AFC client
* Written by FxChiP
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include "usbmux.h"
@@ -1,3 +1,23 @@
/*
* ifuse.c
* A Fuse filesystem which exposes the iPhone's filesystem.
*
* Copyright (c) 2008 Matt Colyer All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#define FUSE_USE_VERSION 26

#include <fuse.h>
@@ -1,5 +1,21 @@
/* iPhone.c
* Functions for creating and initializing iPhone structures
/*
* iphone.c
* Functions for creating and initializing iPhone structures.
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include "usbmux.h"
@@ -1,6 +1,22 @@
/* iphone.h
/*
* iphone.h
* iPhone struct
* Written by FxChiP */
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef IPHONE_H
#define IPHONE_H
@@ -1,6 +1,21 @@
/*
* lockdown.c -- libiphone built-in lockdownd client
* Written by FxChiP
* lockdown.c
* libiphone built-in lockdownd client
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include "usbmux.h"
@@ -1,6 +1,21 @@
/*
* lockdown.h
* Defines lockdown stuff, like the client struct.
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef LOCKDOWND_H
@@ -1,6 +1,21 @@
/*
* libiphone main.c written by FxChiP
* With much help from Daniel Brownlees
* main.c
* Rudimentary interface to the iPhone
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <stdio.h>

This file was deleted.

@@ -1,7 +1,21 @@
/*
* plist.c
* Builds plist XML structures.
* Written by FxChiP
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <libxml/parser.h>
@@ -1,6 +1,21 @@
/* plist.h
/*
* plist.h
* contains structures and the like for plists
* written by fxchip
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef PLIST_H
@@ -1,3 +1,22 @@
/*
* usbmux.c
* Interprets the usb multiplexing protocol used by the iPhone.
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <sys/types.h>
#include <arpa/inet.h>
@@ -1,9 +1,27 @@
/*
* usbmux.h
* Defines structures and variables pertaining to the usb multiplexing.
*
* Copyright (c) 2008 Zack C. All Rights Reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include <sys/types.h>
#include <stdlib.h>
#include <stdint.h>


#ifndef USBMUX_H
#define USBMUX_H

0 comments on commit 47d60e2

Please sign in to comment.
You can’t perform that action at this time.