~ubuntu-branches/ubuntu/quantal/libimobiledevice/quantal-updates

« back to all changes in this revision

Viewing changes to docs/html/include_2libimobiledevice_2afc_8h.html

  • Committer: Bazaar Package Importer
  • Author(s): Julien Lavergne
  • Date: 2010-03-26 21:28:14 UTC
  • mfrom: (2.1.2 sid)
  • Revision ID: james.westby@ubuntu.com-20100326212814-o2tjspgmc3plbrsg
Tags: 1.0.0-1
* New upstream release.
* Bump SONAME to libimobiledevice1.
* debian/watch: Fixed by using githubredir.debian.net redirection.
* debian/libimobiledevice-utils.manpages: Update to use upstream manpages.
* debian/*.1: Remove manpages, there are now shipped upstream.
* debian/control: Fix wrong description. (Closes: #571586)
* debian/patches:
  - 02-add-missing-linking.patch: Refresh.
  - 03-fix-python-import.patch: Dropped, merged upstream.
* debian/libimobiledevice1.install: Remove fdi file, not shipped anymore.
* debian/rules: Remove installed manpages, handle by *.manpages.
* debian/*.manpages: Update location of the manpages.
* debian/*.symbols: Update.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
2
<html xmlns="http://www.w3.org/1999/xhtml">
 
3
<head>
 
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
 
5
<title>libimobiledevice: libimobiledevice/afc.h File Reference</title>
 
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
 
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
 
8
</head>
 
9
<body>
 
10
<!-- Generated by Doxygen 1.6.1 -->
 
11
<div class="navigation" id="top">
 
12
  <div class="tabs">
 
13
    <ul>
 
14
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
 
15
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
 
16
      <li class="current"><a href="files.html"><span>Files</span></a></li>
 
17
    </ul>
 
18
  </div>
 
19
  <div class="tabs">
 
20
    <ul>
 
21
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
 
22
      <li><a href="globals.html"><span>Globals</span></a></li>
 
23
    </ul>
 
24
  </div>
 
25
</div>
 
26
<div class="contents">
 
27
<h1>libimobiledevice/afc.h File Reference</h1>
 
28
<p>AFC Implementation.  
 
29
<a href="#_details">More...</a></p>
 
30
<table border="0" cellpadding="0" cellspacing="0">
 
31
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
 
32
<tr><td class="memItemLeft" align="right" valign="top">typedef int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a></td></tr>
 
33
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Represents an error code.  <a href="#afa46b7e1ac472a5589d85d6a6a7104fb"></a><br/></td></tr>
 
34
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structafc__client__private.html">afc_client_private</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a06351ca31179c322c0a5eb4f13296ec7">afc_client_t</a></td></tr>
 
35
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The client handle.  <a href="#a06351ca31179c322c0a5eb4f13296ec7"></a><br/></td></tr>
 
36
<tr><td colspan="2"><h2>Enumerations</h2></td></tr>
 
37
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3">afc_file_mode_t</a> { <br/>
 
38
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3ace320ad23183a226f6190ced9b964a3d">AFC_FOPEN_RDONLY</a> =  0x00000001, 
 
39
<br/>
 
40
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3adf63c6ca559c2a71e3a38b03f92b83bf">AFC_FOPEN_RW</a> =  0x00000002, 
 
41
<br/>
 
42
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3a5602b891683cb6ecbce94de52282c59f">AFC_FOPEN_WRONLY</a> =  0x00000003, 
 
43
<br/>
 
44
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3ae06639e4e35efa0bc1087604fde1e86b">AFC_FOPEN_WR</a> =  0x00000004, 
 
45
<br/>
 
46
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3a94b02ac741240ef5ca1e8355cdf164e5">AFC_FOPEN_APPEND</a> =  0x00000005, 
 
47
<br/>
 
48
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3a5e28cdfc3c3a503669a4a9aaef53b183">AFC_FOPEN_RDAPPEND</a> =  0x00000006
 
49
<br/>
 
50
 }</td></tr>
 
51
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Flags for afc_file_open. </p>
 
52
 <a href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3">More...</a><br/></td></tr>
 
53
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a1885d5e53edde8732633621768db5908">afc_link_type_t</a> { <br/>
 
54
&nbsp;&nbsp;<b>AFC_HARDLINK</b> =  1, 
 
55
<br/>
 
56
&nbsp;&nbsp;<b>AFC_SYMLINK</b> =  2
 
57
<br/>
 
58
 }</td></tr>
 
59
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Type of link for <a class="el" href="include_2libimobiledevice_2afc_8h.html#ab5ade933b44d1f913df91d1065faa33a" title="Creates a hard link or symbolic link on the device.">afc_make_link()</a> calls. </p>
 
60
<br/></td></tr>
 
61
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9f">afc_lock_op_t</a> { <br/>
 
62
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9fad8a9e6665fb10f161b6b8f39c612c9e4">AFC_LOCK_SH</a> =  1 | 4, 
 
63
<br/>
 
64
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9fac7449d6d73af14e0250d645c6d8730ff">AFC_LOCK_EX</a> =  2 | 4, 
 
65
<br/>
 
66
&nbsp;&nbsp;<a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9facde3c1991b04c6277021250d44e3eb65">AFC_LOCK_UN</a> =  8 | 4
 
67
<br/>
 
68
 }</td></tr>
 
69
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Lock operation flags. </p>
 
70
 <a href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9f">More...</a><br/></td></tr>
 
71
<tr><td colspan="2"><h2>Functions</h2></td></tr>
 
72
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a1b409e6038694b8124e5e671cd528a75">afc_client_new</a> (<a class="el" href="structidevice__private.html">idevice_t</a> device, uint16_t port, <a class="el" href="structafc__client__private.html">afc_client_t</a> *client)</td></tr>
 
73
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Makes a connection to the AFC service on the phone.  <a href="#a1b409e6038694b8124e5e671cd528a75"></a><br/></td></tr>
 
74
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a1cee6b357bdd7f187b7411a41c136412">afc_client_free</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client)</td></tr>
 
75
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Disconnects an AFC client from the phone.  <a href="#a1cee6b357bdd7f187b7411a41c136412"></a><br/></td></tr>
 
76
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#ab4b5ee19121c0283364d3cee5b72cc15">afc_get_device_info</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, char ***infos)</td></tr>
 
77
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get device info for a client connection to phone.  <a href="#ab4b5ee19121c0283364d3cee5b72cc15"></a><br/></td></tr>
 
78
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#aa5dcaf88c17b087b5140fe9a9ada21b0">afc_read_directory</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *dir, char ***list)</td></tr>
 
79
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a directory listing of the directory requested.  <a href="#aa5dcaf88c17b087b5140fe9a9ada21b0"></a><br/></td></tr>
 
80
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a0b7a62789a2208576ebc1c7794f30f13">afc_get_file_info</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *filename, char ***infolist)</td></tr>
 
81
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets information about a specific file.  <a href="#a0b7a62789a2208576ebc1c7794f30f13"></a><br/></td></tr>
 
82
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a2dbfca1d64e26daf9691ba2ddabc92ba">afc_file_open</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *filename, <a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3">afc_file_mode_t</a> file_mode, uint64_t *handle)</td></tr>
 
83
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Opens a file on the phone.  <a href="#a2dbfca1d64e26daf9691ba2ddabc92ba"></a><br/></td></tr>
 
84
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#adb90e6f46af885948a91d328ca2e8c21">afc_file_close</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle)</td></tr>
 
85
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Closes a file on the phone.  <a href="#adb90e6f46af885948a91d328ca2e8c21"></a><br/></td></tr>
 
86
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a37c91f506bdab578d2eec9145fd7d9a7">afc_file_lock</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle, <a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9f">afc_lock_op_t</a> operation)</td></tr>
 
87
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locks or unlocks a file on the phone.  <a href="#a37c91f506bdab578d2eec9145fd7d9a7"></a><br/></td></tr>
 
88
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#aa6a30ec41e4e9b7a7f1011c52917e3a3">afc_file_read</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle, char *data, uint32_t length, uint32_t *bytes_read)</td></tr>
 
89
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to the read the given number of bytes from the given file.  <a href="#aa6a30ec41e4e9b7a7f1011c52917e3a3"></a><br/></td></tr>
 
90
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a034289b2f220b0f56f2155537e59d2ab">afc_file_write</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle, const char *data, uint32_t length, uint32_t *bytes_written)</td></tr>
 
91
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes a given number of bytes to a file.  <a href="#a034289b2f220b0f56f2155537e59d2ab"></a><br/></td></tr>
 
92
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a3f0ebaea303e1fe2b84082ca40e3468d">afc_file_seek</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle, int64_t offset, int whence)</td></tr>
 
93
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seeks to a given position of a pre-opened file on the phone.  <a href="#a3f0ebaea303e1fe2b84082ca40e3468d"></a><br/></td></tr>
 
94
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a5ba8a781ea81b2ce09d2fd8a182b3624">afc_file_tell</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle, uint64_t *position)</td></tr>
 
95
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns current position in a pre-opened file on the phone.  <a href="#a5ba8a781ea81b2ce09d2fd8a182b3624"></a><br/></td></tr>
 
96
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#ad1e44fb7e9b6445841813f522705a721">afc_file_truncate</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, uint64_t handle, uint64_t newsize)</td></tr>
 
97
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the size of a file on the phone.  <a href="#ad1e44fb7e9b6445841813f522705a721"></a><br/></td></tr>
 
98
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#aefd69b3b2168543c06833f9507858b63">afc_remove_path</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *path)</td></tr>
 
99
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a file or directory.  <a href="#aefd69b3b2168543c06833f9507858b63"></a><br/></td></tr>
 
100
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a0c783fb34679a9be39e96aeac2f38801">afc_rename_path</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *from, const char *to)</td></tr>
 
101
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Renames a file or directory on the phone.  <a href="#a0c783fb34679a9be39e96aeac2f38801"></a><br/></td></tr>
 
102
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a57135ac755a1312271d7218432238008">afc_make_directory</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *dir)</td></tr>
 
103
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a directory on the phone.  <a href="#a57135ac755a1312271d7218432238008"></a><br/></td></tr>
 
104
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a8b2a2e73c45e378379fe3e7daddd717b">afc_truncate</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *path, uint64_t newsize)</td></tr>
 
105
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the size of a file on the phone without prior opening it.  <a href="#a8b2a2e73c45e378379fe3e7daddd717b"></a><br/></td></tr>
 
106
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#ab5ade933b44d1f913df91d1065faa33a">afc_make_link</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, <a class="el" href="include_2libimobiledevice_2afc_8h.html#a1885d5e53edde8732633621768db5908">afc_link_type_t</a> linktype, const char *target, const char *linkname)</td></tr>
 
107
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a hard link or symbolic link on the device.  <a href="#ab5ade933b44d1f913df91d1065faa33a"></a><br/></td></tr>
 
108
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a7783580ec92f8374e1e0836ac006cf07">afc_set_file_time</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *path, uint64_t mtime)</td></tr>
 
109
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the modification time of a file on the phone.  <a href="#a7783580ec92f8374e1e0836ac006cf07"></a><br/></td></tr>
 
110
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a6b5608bfa08dc160ef68e49c4da167d9">afc_get_device_info_key</a> (<a class="el" href="structafc__client__private.html">afc_client_t</a> client, const char *key, char **value)</td></tr>
 
111
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a specific key of the device info list for a client connection.  <a href="#a6b5608bfa08dc160ef68e49c4da167d9"></a><br/></td></tr>
 
112
<tr><td colspan="2"><h2>Error Codes</h2></td></tr>
 
113
<tr><td colspan="2"><p><a class="anchor" id="amgrp5c244138ac975df1b1cec1afc71a6c9a"></a> </p>
 
114
<br/><br/></td></tr>
 
115
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab07433a380539e391b7a5c7705e942f6"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_SUCCESS" ref="ab07433a380539e391b7a5c7705e942f6" args="" -->
 
116
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_SUCCESS</b>&nbsp;&nbsp;&nbsp;0</td></tr>
 
117
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa1926af9401f4270b0f1b564fa24b99a"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_UNKNOWN_ERROR" ref="aa1926af9401f4270b0f1b564fa24b99a" args="" -->
 
118
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_UNKNOWN_ERROR</b>&nbsp;&nbsp;&nbsp;1</td></tr>
 
119
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adee408e5e39812c6e22af1b16ad38b9d"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OP_HEADER_INVALID" ref="adee408e5e39812c6e22af1b16ad38b9d" args="" -->
 
120
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_HEADER_INVALID</b>&nbsp;&nbsp;&nbsp;2</td></tr>
 
121
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9f4a1e1b7c5991a085e6cca7d03069c"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_NO_RESOURCES" ref="af9f4a1e1b7c5991a085e6cca7d03069c" args="" -->
 
122
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NO_RESOURCES</b>&nbsp;&nbsp;&nbsp;3</td></tr>
 
123
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c53787a704f318a1378e67a2bd54821"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_READ_ERROR" ref="a5c53787a704f318a1378e67a2bd54821" args="" -->
 
124
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_READ_ERROR</b>&nbsp;&nbsp;&nbsp;4</td></tr>
 
125
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d4fa779457277f4abc52f66770144c1"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_WRITE_ERROR" ref="a7d4fa779457277f4abc52f66770144c1" args="" -->
 
126
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_WRITE_ERROR</b>&nbsp;&nbsp;&nbsp;5</td></tr>
 
127
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05e656de9a72fff6232651f75baf0fb2"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_UNKNOWN_PACKET_TYPE" ref="a05e656de9a72fff6232651f75baf0fb2" args="" -->
 
128
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_UNKNOWN_PACKET_TYPE</b>&nbsp;&nbsp;&nbsp;6</td></tr>
 
129
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84ee95db5fefd25852cc3ed2e6c520b0"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_INVALID_ARG" ref="a84ee95db5fefd25852cc3ed2e6c520b0" args="" -->
 
130
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_INVALID_ARG</b>&nbsp;&nbsp;&nbsp;7</td></tr>
 
131
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad45141ba3f4448a4b8a59d4a2fb41477"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OBJECT_NOT_FOUND" ref="ad45141ba3f4448a4b8a59d4a2fb41477" args="" -->
 
132
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_NOT_FOUND</b>&nbsp;&nbsp;&nbsp;8</td></tr>
 
133
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad61a9270ebe5fab4fe6d7abeffe5e03"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OBJECT_IS_DIR" ref="aad61a9270ebe5fab4fe6d7abeffe5e03" args="" -->
 
134
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_IS_DIR</b>&nbsp;&nbsp;&nbsp;9</td></tr>
 
135
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a851876a334167f788b36bed750612b6d"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_PERM_DENIED" ref="a851876a334167f788b36bed750612b6d" args="" -->
 
136
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_PERM_DENIED</b>&nbsp;&nbsp;&nbsp;10</td></tr>
 
137
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5430bdc338ac51057460593e9829117f"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_SERVICE_NOT_CONNECTED" ref="a5430bdc338ac51057460593e9829117f" args="" -->
 
138
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_SERVICE_NOT_CONNECTED</b>&nbsp;&nbsp;&nbsp;11</td></tr>
 
139
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78934c5e55d17e0112fd4b5ebe1bad49"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OP_TIMEOUT" ref="a78934c5e55d17e0112fd4b5ebe1bad49" args="" -->
 
140
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_TIMEOUT</b>&nbsp;&nbsp;&nbsp;12</td></tr>
 
141
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3181ea4588a8943710a4a70d7a4a653d"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_TOO_MUCH_DATA" ref="a3181ea4588a8943710a4a70d7a4a653d" args="" -->
 
142
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_TOO_MUCH_DATA</b>&nbsp;&nbsp;&nbsp;13</td></tr>
 
143
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a94fc6f077acc4be683b3d08b15373f"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_END_OF_DATA" ref="a8a94fc6f077acc4be683b3d08b15373f" args="" -->
 
144
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_END_OF_DATA</b>&nbsp;&nbsp;&nbsp;14</td></tr>
 
145
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac47b554f4ee2671f9dd4142e7fb42dff"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OP_NOT_SUPPORTED" ref="ac47b554f4ee2671f9dd4142e7fb42dff" args="" -->
 
146
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_NOT_SUPPORTED</b>&nbsp;&nbsp;&nbsp;15</td></tr>
 
147
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a72bb97c20d794e8f81b008a422734735"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OBJECT_EXISTS" ref="a72bb97c20d794e8f81b008a422734735" args="" -->
 
148
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_EXISTS</b>&nbsp;&nbsp;&nbsp;16</td></tr>
 
149
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c77bea2fd6574c304c89d1691bc8525"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OBJECT_BUSY" ref="a7c77bea2fd6574c304c89d1691bc8525" args="" -->
 
150
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_BUSY</b>&nbsp;&nbsp;&nbsp;17</td></tr>
 
151
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ef3970c52be6569d2a0211029d6b429"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_NO_SPACE_LEFT" ref="a8ef3970c52be6569d2a0211029d6b429" args="" -->
 
152
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NO_SPACE_LEFT</b>&nbsp;&nbsp;&nbsp;18</td></tr>
 
153
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a267bd6031da001632b9bceb2bda2368a"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OP_WOULD_BLOCK" ref="a267bd6031da001632b9bceb2bda2368a" args="" -->
 
154
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_WOULD_BLOCK</b>&nbsp;&nbsp;&nbsp;19</td></tr>
 
155
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a700ab04a8e9a57232703ae424eb7949e"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_IO_ERROR" ref="a700ab04a8e9a57232703ae424eb7949e" args="" -->
 
156
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_IO_ERROR</b>&nbsp;&nbsp;&nbsp;20</td></tr>
 
157
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48a536950b1375cbcbdb7b4ccfce60c7"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OP_INTERRUPTED" ref="a48a536950b1375cbcbdb7b4ccfce60c7" args="" -->
 
158
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_INTERRUPTED</b>&nbsp;&nbsp;&nbsp;21</td></tr>
 
159
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9bbe91a7184d137eec542631cef82c54"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_OP_IN_PROGRESS" ref="a9bbe91a7184d137eec542631cef82c54" args="" -->
 
160
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_IN_PROGRESS</b>&nbsp;&nbsp;&nbsp;22</td></tr>
 
161
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55c4136e5ffc221debf292dfec7ba9f6"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_INTERNAL_ERROR" ref="a55c4136e5ffc221debf292dfec7ba9f6" args="" -->
 
162
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_INTERNAL_ERROR</b>&nbsp;&nbsp;&nbsp;23</td></tr>
 
163
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9dc49253e9a538348288ac1fff89d40"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_MUX_ERROR" ref="ab9dc49253e9a538348288ac1fff89d40" args="" -->
 
164
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_MUX_ERROR</b>&nbsp;&nbsp;&nbsp;30</td></tr>
 
165
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab547b433e90e0707b024f3a244464b6c"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_NO_MEM" ref="ab547b433e90e0707b024f3a244464b6c" args="" -->
 
166
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NO_MEM</b>&nbsp;&nbsp;&nbsp;31</td></tr>
 
167
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68604b8c3198ee0f540d4634cbc031ba"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_NOT_ENOUGH_DATA" ref="a68604b8c3198ee0f540d4634cbc031ba" args="" -->
 
168
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NOT_ENOUGH_DATA</b>&nbsp;&nbsp;&nbsp;32</td></tr>
 
169
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad021c046a5ab15a9a981d54ec0e58c44"></a><!-- doxytag: member="include/libimobiledevice/afc.h::AFC_E_DIR_NOT_EMPTY" ref="ad021c046a5ab15a9a981d54ec0e58c44" args="" -->
 
170
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_DIR_NOT_EMPTY</b>&nbsp;&nbsp;&nbsp;33</td></tr>
 
171
</table>
 
172
<hr/><a name="_details"></a><h2>Detailed Description</h2>
 
173
<p>AFC Implementation. </p>
 
174
<hr/><h2>Typedef Documentation</h2>
 
175
<a class="anchor" id="a06351ca31179c322c0a5eb4f13296ec7"></a><!-- doxytag: member="afc.h::afc_client_t" ref="a06351ca31179c322c0a5eb4f13296ec7" args="" -->
 
176
<div class="memitem">
 
177
<div class="memproto">
 
178
      <table class="memname">
 
179
        <tr>
 
180
          <td class="memname">typedef <a class="el" href="structafc__client__private.html">afc_client_private</a>* <a class="el" href="structafc__client__private.html">afc_client_t</a></td>
 
181
        </tr>
 
182
      </table>
 
183
</div>
 
184
<div class="memdoc">
 
185
 
 
186
<p>The client handle. </p>
 
187
 
 
188
</div>
 
189
</div>
 
190
<a class="anchor" id="afa46b7e1ac472a5589d85d6a6a7104fb"></a><!-- doxytag: member="afc.h::afc_error_t" ref="afa46b7e1ac472a5589d85d6a6a7104fb" args="" -->
 
191
<div class="memitem">
 
192
<div class="memproto">
 
193
      <table class="memname">
 
194
        <tr>
 
195
          <td class="memname">typedef int16_t <a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a></td>
 
196
        </tr>
 
197
      </table>
 
198
</div>
 
199
<div class="memdoc">
 
200
 
 
201
<p>Represents an error code. </p>
 
202
 
 
203
</div>
 
204
</div>
 
205
<hr/><h2>Enumeration Type Documentation</h2>
 
206
<a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3"></a><!-- doxytag: member="afc.h::afc_file_mode_t" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3" args="" -->
 
207
<div class="memitem">
 
208
<div class="memproto">
 
209
      <table class="memname">
 
210
        <tr>
 
211
          <td class="memname">enum <a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3">afc_file_mode_t</a></td>
 
212
        </tr>
 
213
      </table>
 
214
</div>
 
215
<div class="memdoc">
 
216
 
 
217
<p>Flags for afc_file_open. </p>
 
218
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
 
219
<tr><td valign="top"><em><a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3ace320ad23183a226f6190ced9b964a3d"></a><!-- doxytag: member="AFC_FOPEN_RDONLY" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3ace320ad23183a226f6190ced9b964a3d" args="" -->AFC_FOPEN_RDONLY</em>&nbsp;</td><td>
 
220
<p>r O_RDONLY </p>
 
221
</td></tr>
 
222
<tr><td valign="top"><em><a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3adf63c6ca559c2a71e3a38b03f92b83bf"></a><!-- doxytag: member="AFC_FOPEN_RW" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3adf63c6ca559c2a71e3a38b03f92b83bf" args="" -->AFC_FOPEN_RW</em>&nbsp;</td><td>
 
223
<p>r+ O_RDWR | O_CREAT </p>
 
224
</td></tr>
 
225
<tr><td valign="top"><em><a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3a5602b891683cb6ecbce94de52282c59f"></a><!-- doxytag: member="AFC_FOPEN_WRONLY" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3a5602b891683cb6ecbce94de52282c59f" args="" -->AFC_FOPEN_WRONLY</em>&nbsp;</td><td>
 
226
<p>w O_WRONLY | O_CREAT | O_TRUNC </p>
 
227
</td></tr>
 
228
<tr><td valign="top"><em><a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3ae06639e4e35efa0bc1087604fde1e86b"></a><!-- doxytag: member="AFC_FOPEN_WR" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3ae06639e4e35efa0bc1087604fde1e86b" args="" -->AFC_FOPEN_WR</em>&nbsp;</td><td>
 
229
<p>w+ O_RDWR | O_CREAT | O_TRUNC </p>
 
230
</td></tr>
 
231
<tr><td valign="top"><em><a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3a94b02ac741240ef5ca1e8355cdf164e5"></a><!-- doxytag: member="AFC_FOPEN_APPEND" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3a94b02ac741240ef5ca1e8355cdf164e5" args="" -->AFC_FOPEN_APPEND</em>&nbsp;</td><td>
 
232
<p>a O_WRONLY | O_APPEND | O_CREAT </p>
 
233
</td></tr>
 
234
<tr><td valign="top"><em><a class="anchor" id="af7a2fa8f957bce530bd7b3aa8c3c3bf3a5e28cdfc3c3a503669a4a9aaef53b183"></a><!-- doxytag: member="AFC_FOPEN_RDAPPEND" ref="af7a2fa8f957bce530bd7b3aa8c3c3bf3a5e28cdfc3c3a503669a4a9aaef53b183" args="" -->AFC_FOPEN_RDAPPEND</em>&nbsp;</td><td>
 
235
<p>a+ O_RDWR | O_APPEND | O_CREAT </p>
 
236
</td></tr>
 
237
</table>
 
238
</dd>
 
239
</dl>
 
240
 
 
241
</div>
 
242
</div>
 
243
<a class="anchor" id="ab249684dc55f8ec52b31db88fff35d9f"></a><!-- doxytag: member="afc.h::afc_lock_op_t" ref="ab249684dc55f8ec52b31db88fff35d9f" args="" -->
 
244
<div class="memitem">
 
245
<div class="memproto">
 
246
      <table class="memname">
 
247
        <tr>
 
248
          <td class="memname">enum <a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9f">afc_lock_op_t</a></td>
 
249
        </tr>
 
250
      </table>
 
251
</div>
 
252
<div class="memdoc">
 
253
 
 
254
<p>Lock operation flags. </p>
 
255
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
 
256
<tr><td valign="top"><em><a class="anchor" id="ab249684dc55f8ec52b31db88fff35d9fad8a9e6665fb10f161b6b8f39c612c9e4"></a><!-- doxytag: member="AFC_LOCK_SH" ref="ab249684dc55f8ec52b31db88fff35d9fad8a9e6665fb10f161b6b8f39c612c9e4" args="" -->AFC_LOCK_SH</em>&nbsp;</td><td>
 
257
<p>shared lock </p>
 
258
</td></tr>
 
259
<tr><td valign="top"><em><a class="anchor" id="ab249684dc55f8ec52b31db88fff35d9fac7449d6d73af14e0250d645c6d8730ff"></a><!-- doxytag: member="AFC_LOCK_EX" ref="ab249684dc55f8ec52b31db88fff35d9fac7449d6d73af14e0250d645c6d8730ff" args="" -->AFC_LOCK_EX</em>&nbsp;</td><td>
 
260
<p>exclusive lock </p>
 
261
</td></tr>
 
262
<tr><td valign="top"><em><a class="anchor" id="ab249684dc55f8ec52b31db88fff35d9facde3c1991b04c6277021250d44e3eb65"></a><!-- doxytag: member="AFC_LOCK_UN" ref="ab249684dc55f8ec52b31db88fff35d9facde3c1991b04c6277021250d44e3eb65" args="" -->AFC_LOCK_UN</em>&nbsp;</td><td>
 
263
<p>unlock </p>
 
264
</td></tr>
 
265
</table>
 
266
</dd>
 
267
</dl>
 
268
 
 
269
</div>
 
270
</div>
 
271
<hr/><h2>Function Documentation</h2>
 
272
<a class="anchor" id="a1cee6b357bdd7f187b7411a41c136412"></a><!-- doxytag: member="afc.h::afc_client_free" ref="a1cee6b357bdd7f187b7411a41c136412" args="(afc_client_t client)" -->
 
273
<div class="memitem">
 
274
<div class="memproto">
 
275
      <table class="memname">
 
276
        <tr>
 
277
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_client_free </td>
 
278
          <td>(</td>
 
279
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
280
          <td class="paramname"> <em>client</em></td>
 
281
          <td>&nbsp;)&nbsp;</td>
 
282
          <td></td>
 
283
        </tr>
 
284
      </table>
 
285
</div>
 
286
<div class="memdoc">
 
287
 
 
288
<p>Disconnects an AFC client from the phone. </p>
 
289
<dl><dt><b>Parameters:</b></dt><dd>
 
290
  <table border="0" cellspacing="2" cellpadding="0">
 
291
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to disconnect. </td></tr>
 
292
  </table>
 
293
  </dd>
 
294
</dl>
 
295
 
 
296
</div>
 
297
</div>
 
298
<a class="anchor" id="a1b409e6038694b8124e5e671cd528a75"></a><!-- doxytag: member="afc.h::afc_client_new" ref="a1b409e6038694b8124e5e671cd528a75" args="(idevice_t device, uint16_t port, afc_client_t *client)" -->
 
299
<div class="memitem">
 
300
<div class="memproto">
 
301
      <table class="memname">
 
302
        <tr>
 
303
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_client_new </td>
 
304
          <td>(</td>
 
305
          <td class="paramtype"><a class="el" href="structidevice__private.html">idevice_t</a>&nbsp;</td>
 
306
          <td class="paramname"> <em>device</em>, </td>
 
307
        </tr>
 
308
        <tr>
 
309
          <td class="paramkey"></td>
 
310
          <td></td>
 
311
          <td class="paramtype">uint16_t&nbsp;</td>
 
312
          <td class="paramname"> <em>port</em>, </td>
 
313
        </tr>
 
314
        <tr>
 
315
          <td class="paramkey"></td>
 
316
          <td></td>
 
317
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a> *&nbsp;</td>
 
318
          <td class="paramname"> <em>client</em></td><td>&nbsp;</td>
 
319
        </tr>
 
320
        <tr>
 
321
          <td></td>
 
322
          <td>)</td>
 
323
          <td></td><td></td><td></td>
 
324
        </tr>
 
325
      </table>
 
326
</div>
 
327
<div class="memdoc">
 
328
 
 
329
<p>Makes a connection to the AFC service on the phone. </p>
 
330
<dl><dt><b>Parameters:</b></dt><dd>
 
331
  <table border="0" cellspacing="2" cellpadding="0">
 
332
    <tr><td valign="top"></td><td valign="top"><em>device</em>&nbsp;</td><td>The device to connect to. </td></tr>
 
333
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>The destination port. </td></tr>
 
334
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>Pointer that will be set to a newly allocated afc_client_t upon successful return.</td></tr>
 
335
  </table>
 
336
  </dd>
 
337
</dl>
 
338
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success, AFC_E_INVALID_ARG when device or port is invalid, AFC_E_MUX_ERROR when the connection failed, or AFC_E_NO_MEM if there is a memory allocation problem. </dd></dl>
 
339
 
 
340
</div>
 
341
</div>
 
342
<a class="anchor" id="adb90e6f46af885948a91d328ca2e8c21"></a><!-- doxytag: member="afc.h::afc_file_close" ref="adb90e6f46af885948a91d328ca2e8c21" args="(afc_client_t client, uint64_t handle)" -->
 
343
<div class="memitem">
 
344
<div class="memproto">
 
345
      <table class="memname">
 
346
        <tr>
 
347
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_close </td>
 
348
          <td>(</td>
 
349
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
350
          <td class="paramname"> <em>client</em>, </td>
 
351
        </tr>
 
352
        <tr>
 
353
          <td class="paramkey"></td>
 
354
          <td></td>
 
355
          <td class="paramtype">uint64_t&nbsp;</td>
 
356
          <td class="paramname"> <em>handle</em></td><td>&nbsp;</td>
 
357
        </tr>
 
358
        <tr>
 
359
          <td></td>
 
360
          <td>)</td>
 
361
          <td></td><td></td><td></td>
 
362
        </tr>
 
363
      </table>
 
364
</div>
 
365
<div class="memdoc">
 
366
 
 
367
<p>Closes a file on the phone. </p>
 
368
<dl><dt><b>Parameters:</b></dt><dd>
 
369
  <table border="0" cellspacing="2" cellpadding="0">
 
370
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to close the file with. </td></tr>
 
371
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
372
  </table>
 
373
  </dd>
 
374
</dl>
 
375
 
 
376
</div>
 
377
</div>
 
378
<a class="anchor" id="a37c91f506bdab578d2eec9145fd7d9a7"></a><!-- doxytag: member="afc.h::afc_file_lock" ref="a37c91f506bdab578d2eec9145fd7d9a7" args="(afc_client_t client, uint64_t handle, afc_lock_op_t operation)" -->
 
379
<div class="memitem">
 
380
<div class="memproto">
 
381
      <table class="memname">
 
382
        <tr>
 
383
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_lock </td>
 
384
          <td>(</td>
 
385
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
386
          <td class="paramname"> <em>client</em>, </td>
 
387
        </tr>
 
388
        <tr>
 
389
          <td class="paramkey"></td>
 
390
          <td></td>
 
391
          <td class="paramtype">uint64_t&nbsp;</td>
 
392
          <td class="paramname"> <em>handle</em>, </td>
 
393
        </tr>
 
394
        <tr>
 
395
          <td class="paramkey"></td>
 
396
          <td></td>
 
397
          <td class="paramtype"><a class="el" href="include_2libimobiledevice_2afc_8h.html#ab249684dc55f8ec52b31db88fff35d9f">afc_lock_op_t</a>&nbsp;</td>
 
398
          <td class="paramname"> <em>operation</em></td><td>&nbsp;</td>
 
399
        </tr>
 
400
        <tr>
 
401
          <td></td>
 
402
          <td>)</td>
 
403
          <td></td><td></td><td></td>
 
404
        </tr>
 
405
      </table>
 
406
</div>
 
407
<div class="memdoc">
 
408
 
 
409
<p>Locks or unlocks a file on the phone. </p>
 
410
<p>makes use of flock on the device, see <a href="http://developer.apple.com/documentation/Darwin/Reference/ManPages/man2/flock.2.html">http://developer.apple.com/documentation/Darwin/Reference/ManPages/man2/flock.2.html</a></p>
 
411
<dl><dt><b>Parameters:</b></dt><dd>
 
412
  <table border="0" cellspacing="2" cellpadding="0">
 
413
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to lock the file with. </td></tr>
 
414
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
415
    <tr><td valign="top"></td><td valign="top"><em>operation</em>&nbsp;</td><td>the lock or unlock operation to perform, this is one of AFC_LOCK_SH (shared lock), AFC_LOCK_EX (exclusive lock), or AFC_LOCK_UN (unlock). </td></tr>
 
416
  </table>
 
417
  </dd>
 
418
</dl>
 
419
 
 
420
</div>
 
421
</div>
 
422
<a class="anchor" id="a2dbfca1d64e26daf9691ba2ddabc92ba"></a><!-- doxytag: member="afc.h::afc_file_open" ref="a2dbfca1d64e26daf9691ba2ddabc92ba" args="(afc_client_t client, const char *filename, afc_file_mode_t file_mode, uint64_t *handle)" -->
 
423
<div class="memitem">
 
424
<div class="memproto">
 
425
      <table class="memname">
 
426
        <tr>
 
427
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_open </td>
 
428
          <td>(</td>
 
429
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
430
          <td class="paramname"> <em>client</em>, </td>
 
431
        </tr>
 
432
        <tr>
 
433
          <td class="paramkey"></td>
 
434
          <td></td>
 
435
          <td class="paramtype">const char *&nbsp;</td>
 
436
          <td class="paramname"> <em>filename</em>, </td>
 
437
        </tr>
 
438
        <tr>
 
439
          <td class="paramkey"></td>
 
440
          <td></td>
 
441
          <td class="paramtype"><a class="el" href="include_2libimobiledevice_2afc_8h.html#af7a2fa8f957bce530bd7b3aa8c3c3bf3">afc_file_mode_t</a>&nbsp;</td>
 
442
          <td class="paramname"> <em>file_mode</em>, </td>
 
443
        </tr>
 
444
        <tr>
 
445
          <td class="paramkey"></td>
 
446
          <td></td>
 
447
          <td class="paramtype">uint64_t *&nbsp;</td>
 
448
          <td class="paramname"> <em>handle</em></td><td>&nbsp;</td>
 
449
        </tr>
 
450
        <tr>
 
451
          <td></td>
 
452
          <td>)</td>
 
453
          <td></td><td></td><td></td>
 
454
        </tr>
 
455
      </table>
 
456
</div>
 
457
<div class="memdoc">
 
458
 
 
459
<p>Opens a file on the phone. </p>
 
460
<dl><dt><b>Parameters:</b></dt><dd>
 
461
  <table border="0" cellspacing="2" cellpadding="0">
 
462
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to open the file. </td></tr>
 
463
    <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>The file to open. (must be a fully-qualified path) </td></tr>
 
464
    <tr><td valign="top"></td><td valign="top"><em>file_mode</em>&nbsp;</td><td>The mode to use to open the file. Can be AFC_FILE_READ or AFC_FILE_WRITE; the former lets you read and write, however, and the second one will *create* the file, destroying anything previously there. </td></tr>
 
465
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>Pointer to a uint64_t that will hold the handle of the file</td></tr>
 
466
  </table>
 
467
  </dd>
 
468
</dl>
 
469
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
470
 
 
471
</div>
 
472
</div>
 
473
<a class="anchor" id="aa6a30ec41e4e9b7a7f1011c52917e3a3"></a><!-- doxytag: member="afc.h::afc_file_read" ref="aa6a30ec41e4e9b7a7f1011c52917e3a3" args="(afc_client_t client, uint64_t handle, char *data, uint32_t length, uint32_t *bytes_read)" -->
 
474
<div class="memitem">
 
475
<div class="memproto">
 
476
      <table class="memname">
 
477
        <tr>
 
478
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_read </td>
 
479
          <td>(</td>
 
480
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
481
          <td class="paramname"> <em>client</em>, </td>
 
482
        </tr>
 
483
        <tr>
 
484
          <td class="paramkey"></td>
 
485
          <td></td>
 
486
          <td class="paramtype">uint64_t&nbsp;</td>
 
487
          <td class="paramname"> <em>handle</em>, </td>
 
488
        </tr>
 
489
        <tr>
 
490
          <td class="paramkey"></td>
 
491
          <td></td>
 
492
          <td class="paramtype">char *&nbsp;</td>
 
493
          <td class="paramname"> <em>data</em>, </td>
 
494
        </tr>
 
495
        <tr>
 
496
          <td class="paramkey"></td>
 
497
          <td></td>
 
498
          <td class="paramtype">uint32_t&nbsp;</td>
 
499
          <td class="paramname"> <em>length</em>, </td>
 
500
        </tr>
 
501
        <tr>
 
502
          <td class="paramkey"></td>
 
503
          <td></td>
 
504
          <td class="paramtype">uint32_t *&nbsp;</td>
 
505
          <td class="paramname"> <em>bytes_read</em></td><td>&nbsp;</td>
 
506
        </tr>
 
507
        <tr>
 
508
          <td></td>
 
509
          <td>)</td>
 
510
          <td></td><td></td><td></td>
 
511
        </tr>
 
512
      </table>
 
513
</div>
 
514
<div class="memdoc">
 
515
 
 
516
<p>Attempts to the read the given number of bytes from the given file. </p>
 
517
<dl><dt><b>Parameters:</b></dt><dd>
 
518
  <table border="0" cellspacing="2" cellpadding="0">
 
519
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The relevant AFC client </td></tr>
 
520
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file </td></tr>
 
521
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>The pointer to the memory region to store the read data </td></tr>
 
522
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of bytes to read </td></tr>
 
523
    <tr><td valign="top"></td><td valign="top"><em>bytes_read</em>&nbsp;</td><td>The number of bytes actually read.</td></tr>
 
524
  </table>
 
525
  </dd>
 
526
</dl>
 
527
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
528
 
 
529
</div>
 
530
</div>
 
531
<a class="anchor" id="a3f0ebaea303e1fe2b84082ca40e3468d"></a><!-- doxytag: member="afc.h::afc_file_seek" ref="a3f0ebaea303e1fe2b84082ca40e3468d" args="(afc_client_t client, uint64_t handle, int64_t offset, int whence)" -->
 
532
<div class="memitem">
 
533
<div class="memproto">
 
534
      <table class="memname">
 
535
        <tr>
 
536
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_seek </td>
 
537
          <td>(</td>
 
538
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
539
          <td class="paramname"> <em>client</em>, </td>
 
540
        </tr>
 
541
        <tr>
 
542
          <td class="paramkey"></td>
 
543
          <td></td>
 
544
          <td class="paramtype">uint64_t&nbsp;</td>
 
545
          <td class="paramname"> <em>handle</em>, </td>
 
546
        </tr>
 
547
        <tr>
 
548
          <td class="paramkey"></td>
 
549
          <td></td>
 
550
          <td class="paramtype">int64_t&nbsp;</td>
 
551
          <td class="paramname"> <em>offset</em>, </td>
 
552
        </tr>
 
553
        <tr>
 
554
          <td class="paramkey"></td>
 
555
          <td></td>
 
556
          <td class="paramtype">int&nbsp;</td>
 
557
          <td class="paramname"> <em>whence</em></td><td>&nbsp;</td>
 
558
        </tr>
 
559
        <tr>
 
560
          <td></td>
 
561
          <td>)</td>
 
562
          <td></td><td></td><td></td>
 
563
        </tr>
 
564
      </table>
 
565
</div>
 
566
<div class="memdoc">
 
567
 
 
568
<p>Seeks to a given position of a pre-opened file on the phone. </p>
 
569
<dl><dt><b>Parameters:</b></dt><dd>
 
570
  <table border="0" cellspacing="2" cellpadding="0">
 
571
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to seek to the position. </td></tr>
 
572
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened. </td></tr>
 
573
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>Seek offset. </td></tr>
 
574
    <tr><td valign="top"></td><td valign="top"><em>whence</em>&nbsp;</td><td>Seeking direction, one of SEEK_SET, SEEK_CUR, or SEEK_END.</td></tr>
 
575
  </table>
 
576
  </dd>
 
577
</dl>
 
578
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
579
 
 
580
</div>
 
581
</div>
 
582
<a class="anchor" id="a5ba8a781ea81b2ce09d2fd8a182b3624"></a><!-- doxytag: member="afc.h::afc_file_tell" ref="a5ba8a781ea81b2ce09d2fd8a182b3624" args="(afc_client_t client, uint64_t handle, uint64_t *position)" -->
 
583
<div class="memitem">
 
584
<div class="memproto">
 
585
      <table class="memname">
 
586
        <tr>
 
587
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_tell </td>
 
588
          <td>(</td>
 
589
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
590
          <td class="paramname"> <em>client</em>, </td>
 
591
        </tr>
 
592
        <tr>
 
593
          <td class="paramkey"></td>
 
594
          <td></td>
 
595
          <td class="paramtype">uint64_t&nbsp;</td>
 
596
          <td class="paramname"> <em>handle</em>, </td>
 
597
        </tr>
 
598
        <tr>
 
599
          <td class="paramkey"></td>
 
600
          <td></td>
 
601
          <td class="paramtype">uint64_t *&nbsp;</td>
 
602
          <td class="paramname"> <em>position</em></td><td>&nbsp;</td>
 
603
        </tr>
 
604
        <tr>
 
605
          <td></td>
 
606
          <td>)</td>
 
607
          <td></td><td></td><td></td>
 
608
        </tr>
 
609
      </table>
 
610
</div>
 
611
<div class="memdoc">
 
612
 
 
613
<p>Returns current position in a pre-opened file on the phone. </p>
 
614
<dl><dt><b>Parameters:</b></dt><dd>
 
615
  <table border="0" cellspacing="2" cellpadding="0">
 
616
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use. </td></tr>
 
617
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
618
    <tr><td valign="top"></td><td valign="top"><em>position</em>&nbsp;</td><td>Position in bytes of indicator</td></tr>
 
619
  </table>
 
620
  </dd>
 
621
</dl>
 
622
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
623
 
 
624
</div>
 
625
</div>
 
626
<a class="anchor" id="ad1e44fb7e9b6445841813f522705a721"></a><!-- doxytag: member="afc.h::afc_file_truncate" ref="ad1e44fb7e9b6445841813f522705a721" args="(afc_client_t client, uint64_t handle, uint64_t newsize)" -->
 
627
<div class="memitem">
 
628
<div class="memproto">
 
629
      <table class="memname">
 
630
        <tr>
 
631
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_truncate </td>
 
632
          <td>(</td>
 
633
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
634
          <td class="paramname"> <em>client</em>, </td>
 
635
        </tr>
 
636
        <tr>
 
637
          <td class="paramkey"></td>
 
638
          <td></td>
 
639
          <td class="paramtype">uint64_t&nbsp;</td>
 
640
          <td class="paramname"> <em>handle</em>, </td>
 
641
        </tr>
 
642
        <tr>
 
643
          <td class="paramkey"></td>
 
644
          <td></td>
 
645
          <td class="paramtype">uint64_t&nbsp;</td>
 
646
          <td class="paramname"> <em>newsize</em></td><td>&nbsp;</td>
 
647
        </tr>
 
648
        <tr>
 
649
          <td></td>
 
650
          <td>)</td>
 
651
          <td></td><td></td><td></td>
 
652
        </tr>
 
653
      </table>
 
654
</div>
 
655
<div class="memdoc">
 
656
 
 
657
<p>Sets the size of a file on the phone. </p>
 
658
<dl><dt><b>Parameters:</b></dt><dd>
 
659
  <table border="0" cellspacing="2" cellpadding="0">
 
660
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to set the file size. </td></tr>
 
661
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
662
    <tr><td valign="top"></td><td valign="top"><em>newsize</em>&nbsp;</td><td>The size to set the file to.</td></tr>
 
663
  </table>
 
664
  </dd>
 
665
</dl>
 
666
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value.</dd></dl>
 
667
<dl class="note"><dt><b>Note:</b></dt><dd>This function is more akin to ftruncate than truncate, and truncate calls would have to open the file before calling this, sadly. </dd></dl>
 
668
 
 
669
</div>
 
670
</div>
 
671
<a class="anchor" id="a034289b2f220b0f56f2155537e59d2ab"></a><!-- doxytag: member="afc.h::afc_file_write" ref="a034289b2f220b0f56f2155537e59d2ab" args="(afc_client_t client, uint64_t handle, const char *data, uint32_t length, uint32_t *bytes_written)" -->
 
672
<div class="memitem">
 
673
<div class="memproto">
 
674
      <table class="memname">
 
675
        <tr>
 
676
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_file_write </td>
 
677
          <td>(</td>
 
678
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
679
          <td class="paramname"> <em>client</em>, </td>
 
680
        </tr>
 
681
        <tr>
 
682
          <td class="paramkey"></td>
 
683
          <td></td>
 
684
          <td class="paramtype">uint64_t&nbsp;</td>
 
685
          <td class="paramname"> <em>handle</em>, </td>
 
686
        </tr>
 
687
        <tr>
 
688
          <td class="paramkey"></td>
 
689
          <td></td>
 
690
          <td class="paramtype">const char *&nbsp;</td>
 
691
          <td class="paramname"> <em>data</em>, </td>
 
692
        </tr>
 
693
        <tr>
 
694
          <td class="paramkey"></td>
 
695
          <td></td>
 
696
          <td class="paramtype">uint32_t&nbsp;</td>
 
697
          <td class="paramname"> <em>length</em>, </td>
 
698
        </tr>
 
699
        <tr>
 
700
          <td class="paramkey"></td>
 
701
          <td></td>
 
702
          <td class="paramtype">uint32_t *&nbsp;</td>
 
703
          <td class="paramname"> <em>bytes_written</em></td><td>&nbsp;</td>
 
704
        </tr>
 
705
        <tr>
 
706
          <td></td>
 
707
          <td>)</td>
 
708
          <td></td><td></td><td></td>
 
709
        </tr>
 
710
      </table>
 
711
</div>
 
712
<div class="memdoc">
 
713
 
 
714
<p>Writes a given number of bytes to a file. </p>
 
715
<dl><dt><b>Parameters:</b></dt><dd>
 
716
  <table border="0" cellspacing="2" cellpadding="0">
 
717
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to write to the file. </td></tr>
 
718
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of previously opened file. </td></tr>
 
719
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>The data to write to the file. </td></tr>
 
720
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>How much data to write. </td></tr>
 
721
    <tr><td valign="top"></td><td valign="top"><em>bytes_written</em>&nbsp;</td><td>The number of bytes actually written to the file.</td></tr>
 
722
  </table>
 
723
  </dd>
 
724
</dl>
 
725
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
726
 
 
727
</div>
 
728
</div>
 
729
<a class="anchor" id="ab4b5ee19121c0283364d3cee5b72cc15"></a><!-- doxytag: member="afc.h::afc_get_device_info" ref="ab4b5ee19121c0283364d3cee5b72cc15" args="(afc_client_t client, char ***infos)" -->
 
730
<div class="memitem">
 
731
<div class="memproto">
 
732
      <table class="memname">
 
733
        <tr>
 
734
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_get_device_info </td>
 
735
          <td>(</td>
 
736
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
737
          <td class="paramname"> <em>client</em>, </td>
 
738
        </tr>
 
739
        <tr>
 
740
          <td class="paramkey"></td>
 
741
          <td></td>
 
742
          <td class="paramtype">char ***&nbsp;</td>
 
743
          <td class="paramname"> <em>infos</em></td><td>&nbsp;</td>
 
744
        </tr>
 
745
        <tr>
 
746
          <td></td>
 
747
          <td>)</td>
 
748
          <td></td><td></td><td></td>
 
749
        </tr>
 
750
      </table>
 
751
</div>
 
752
<div class="memdoc">
 
753
 
 
754
<p>Get device info for a client connection to phone. </p>
 
755
<p>The device information returned is the device model as well as the free space, the total capacity and blocksize on the accessed disk partition.</p>
 
756
<dl><dt><b>Parameters:</b></dt><dd>
 
757
  <table border="0" cellspacing="2" cellpadding="0">
 
758
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to get device info for. </td></tr>
 
759
    <tr><td valign="top"></td><td valign="top"><em>infos</em>&nbsp;</td><td>A char ** list of parameters as given by AFC or NULL if there was an error.</td></tr>
 
760
  </table>
 
761
  </dd>
 
762
</dl>
 
763
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
764
 
 
765
</div>
 
766
</div>
 
767
<a class="anchor" id="a6b5608bfa08dc160ef68e49c4da167d9"></a><!-- doxytag: member="afc.h::afc_get_device_info_key" ref="a6b5608bfa08dc160ef68e49c4da167d9" args="(afc_client_t client, const char *key, char **value)" -->
 
768
<div class="memitem">
 
769
<div class="memproto">
 
770
      <table class="memname">
 
771
        <tr>
 
772
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_get_device_info_key </td>
 
773
          <td>(</td>
 
774
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
775
          <td class="paramname"> <em>client</em>, </td>
 
776
        </tr>
 
777
        <tr>
 
778
          <td class="paramkey"></td>
 
779
          <td></td>
 
780
          <td class="paramtype">const char *&nbsp;</td>
 
781
          <td class="paramname"> <em>key</em>, </td>
 
782
        </tr>
 
783
        <tr>
 
784
          <td class="paramkey"></td>
 
785
          <td></td>
 
786
          <td class="paramtype">char **&nbsp;</td>
 
787
          <td class="paramname"> <em>value</em></td><td>&nbsp;</td>
 
788
        </tr>
 
789
        <tr>
 
790
          <td></td>
 
791
          <td>)</td>
 
792
          <td></td><td></td><td></td>
 
793
        </tr>
 
794
      </table>
 
795
</div>
 
796
<div class="memdoc">
 
797
 
 
798
<p>Get a specific key of the device info list for a client connection. </p>
 
799
<p>Known key values are: Model, FSTotalBytes, FSFreeBytes and FSBlockSize. This is a helper function for <a class="el" href="include_2libimobiledevice_2afc_8h.html#ab4b5ee19121c0283364d3cee5b72cc15" title="Get device info for a client connection to phone.">afc_get_device_info()</a>.</p>
 
800
<dl><dt><b>Parameters:</b></dt><dd>
 
801
  <table border="0" cellspacing="2" cellpadding="0">
 
802
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to get device info for. </td></tr>
 
803
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key to get the value of. </td></tr>
 
804
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>The value for the key if successful or NULL otherwise.</td></tr>
 
805
  </table>
 
806
  </dd>
 
807
</dl>
 
808
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
809
 
 
810
</div>
 
811
</div>
 
812
<a class="anchor" id="a0b7a62789a2208576ebc1c7794f30f13"></a><!-- doxytag: member="afc.h::afc_get_file_info" ref="a0b7a62789a2208576ebc1c7794f30f13" args="(afc_client_t client, const char *filename, char ***infolist)" -->
 
813
<div class="memitem">
 
814
<div class="memproto">
 
815
      <table class="memname">
 
816
        <tr>
 
817
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_get_file_info </td>
 
818
          <td>(</td>
 
819
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
820
          <td class="paramname"> <em>client</em>, </td>
 
821
        </tr>
 
822
        <tr>
 
823
          <td class="paramkey"></td>
 
824
          <td></td>
 
825
          <td class="paramtype">const char *&nbsp;</td>
 
826
          <td class="paramname"> <em>path</em>, </td>
 
827
        </tr>
 
828
        <tr>
 
829
          <td class="paramkey"></td>
 
830
          <td></td>
 
831
          <td class="paramtype">char ***&nbsp;</td>
 
832
          <td class="paramname"> <em>infolist</em></td><td>&nbsp;</td>
 
833
        </tr>
 
834
        <tr>
 
835
          <td></td>
 
836
          <td>)</td>
 
837
          <td></td><td></td><td></td>
 
838
        </tr>
 
839
      </table>
 
840
</div>
 
841
<div class="memdoc">
 
842
 
 
843
<p>Gets information about a specific file. </p>
 
844
<dl><dt><b>Parameters:</b></dt><dd>
 
845
  <table border="0" cellspacing="2" cellpadding="0">
 
846
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to get the information of the file. </td></tr>
 
847
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>The fully-qualified path to the file. </td></tr>
 
848
    <tr><td valign="top"></td><td valign="top"><em>infolist</em>&nbsp;</td><td>Pointer to a buffer that will be filled with a NULL-terminated list of strings with the file information. Set to NULL before calling this function.</td></tr>
 
849
  </table>
 
850
  </dd>
 
851
</dl>
 
852
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
853
 
 
854
</div>
 
855
</div>
 
856
<a class="anchor" id="a57135ac755a1312271d7218432238008"></a><!-- doxytag: member="afc.h::afc_make_directory" ref="a57135ac755a1312271d7218432238008" args="(afc_client_t client, const char *dir)" -->
 
857
<div class="memitem">
 
858
<div class="memproto">
 
859
      <table class="memname">
 
860
        <tr>
 
861
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_make_directory </td>
 
862
          <td>(</td>
 
863
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
864
          <td class="paramname"> <em>client</em>, </td>
 
865
        </tr>
 
866
        <tr>
 
867
          <td class="paramkey"></td>
 
868
          <td></td>
 
869
          <td class="paramtype">const char *&nbsp;</td>
 
870
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
 
871
        </tr>
 
872
        <tr>
 
873
          <td></td>
 
874
          <td>)</td>
 
875
          <td></td><td></td><td></td>
 
876
        </tr>
 
877
      </table>
 
878
</div>
 
879
<div class="memdoc">
 
880
 
 
881
<p>Creates a directory on the phone. </p>
 
882
<dl><dt><b>Parameters:</b></dt><dd>
 
883
  <table border="0" cellspacing="2" cellpadding="0">
 
884
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to make a directory. </td></tr>
 
885
    <tr><td valign="top"></td><td valign="top"><em>dir</em>&nbsp;</td><td>The directory's path. (must be a fully-qualified path, I assume all other mkdir restrictions apply as well)</td></tr>
 
886
  </table>
 
887
  </dd>
 
888
</dl>
 
889
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
890
 
 
891
</div>
 
892
</div>
 
893
<a class="anchor" id="ab5ade933b44d1f913df91d1065faa33a"></a><!-- doxytag: member="afc.h::afc_make_link" ref="ab5ade933b44d1f913df91d1065faa33a" args="(afc_client_t client, afc_link_type_t linktype, const char *target, const char *linkname)" -->
 
894
<div class="memitem">
 
895
<div class="memproto">
 
896
      <table class="memname">
 
897
        <tr>
 
898
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_make_link </td>
 
899
          <td>(</td>
 
900
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
901
          <td class="paramname"> <em>client</em>, </td>
 
902
        </tr>
 
903
        <tr>
 
904
          <td class="paramkey"></td>
 
905
          <td></td>
 
906
          <td class="paramtype"><a class="el" href="include_2libimobiledevice_2afc_8h.html#a1885d5e53edde8732633621768db5908">afc_link_type_t</a>&nbsp;</td>
 
907
          <td class="paramname"> <em>linktype</em>, </td>
 
908
        </tr>
 
909
        <tr>
 
910
          <td class="paramkey"></td>
 
911
          <td></td>
 
912
          <td class="paramtype">const char *&nbsp;</td>
 
913
          <td class="paramname"> <em>target</em>, </td>
 
914
        </tr>
 
915
        <tr>
 
916
          <td class="paramkey"></td>
 
917
          <td></td>
 
918
          <td class="paramtype">const char *&nbsp;</td>
 
919
          <td class="paramname"> <em>linkname</em></td><td>&nbsp;</td>
 
920
        </tr>
 
921
        <tr>
 
922
          <td></td>
 
923
          <td>)</td>
 
924
          <td></td><td></td><td></td>
 
925
        </tr>
 
926
      </table>
 
927
</div>
 
928
<div class="memdoc">
 
929
 
 
930
<p>Creates a hard link or symbolic link on the device. </p>
 
931
<dl><dt><b>Parameters:</b></dt><dd>
 
932
  <table border="0" cellspacing="2" cellpadding="0">
 
933
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use for making a link </td></tr>
 
934
    <tr><td valign="top"></td><td valign="top"><em>linktype</em>&nbsp;</td><td>1 = hard link, 2 = symlink </td></tr>
 
935
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>The file to be linked. </td></tr>
 
936
    <tr><td valign="top"></td><td valign="top"><em>linkname</em>&nbsp;</td><td>The name of link.</td></tr>
 
937
  </table>
 
938
  </dd>
 
939
</dl>
 
940
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
941
 
 
942
</div>
 
943
</div>
 
944
<a class="anchor" id="aa5dcaf88c17b087b5140fe9a9ada21b0"></a><!-- doxytag: member="afc.h::afc_read_directory" ref="aa5dcaf88c17b087b5140fe9a9ada21b0" args="(afc_client_t client, const char *dir, char ***list)" -->
 
945
<div class="memitem">
 
946
<div class="memproto">
 
947
      <table class="memname">
 
948
        <tr>
 
949
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_read_directory </td>
 
950
          <td>(</td>
 
951
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
952
          <td class="paramname"> <em>client</em>, </td>
 
953
        </tr>
 
954
        <tr>
 
955
          <td class="paramkey"></td>
 
956
          <td></td>
 
957
          <td class="paramtype">const char *&nbsp;</td>
 
958
          <td class="paramname"> <em>dir</em>, </td>
 
959
        </tr>
 
960
        <tr>
 
961
          <td class="paramkey"></td>
 
962
          <td></td>
 
963
          <td class="paramtype">char ***&nbsp;</td>
 
964
          <td class="paramname"> <em>list</em></td><td>&nbsp;</td>
 
965
        </tr>
 
966
        <tr>
 
967
          <td></td>
 
968
          <td>)</td>
 
969
          <td></td><td></td><td></td>
 
970
        </tr>
 
971
      </table>
 
972
</div>
 
973
<div class="memdoc">
 
974
 
 
975
<p>Gets a directory listing of the directory requested. </p>
 
976
<dl><dt><b>Parameters:</b></dt><dd>
 
977
  <table border="0" cellspacing="2" cellpadding="0">
 
978
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to get a directory listing from. </td></tr>
 
979
    <tr><td valign="top"></td><td valign="top"><em>dir</em>&nbsp;</td><td>The directory to list. (must be a fully-qualified path) </td></tr>
 
980
    <tr><td valign="top"></td><td valign="top"><em>list</em>&nbsp;</td><td>A char list of files in that directory, terminated by an empty string or NULL if there was an error.</td></tr>
 
981
  </table>
 
982
  </dd>
 
983
</dl>
 
984
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
985
 
 
986
</div>
 
987
</div>
 
988
<a class="anchor" id="aefd69b3b2168543c06833f9507858b63"></a><!-- doxytag: member="afc.h::afc_remove_path" ref="aefd69b3b2168543c06833f9507858b63" args="(afc_client_t client, const char *path)" -->
 
989
<div class="memitem">
 
990
<div class="memproto">
 
991
      <table class="memname">
 
992
        <tr>
 
993
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_remove_path </td>
 
994
          <td>(</td>
 
995
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
996
          <td class="paramname"> <em>client</em>, </td>
 
997
        </tr>
 
998
        <tr>
 
999
          <td class="paramkey"></td>
 
1000
          <td></td>
 
1001
          <td class="paramtype">const char *&nbsp;</td>
 
1002
          <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
 
1003
        </tr>
 
1004
        <tr>
 
1005
          <td></td>
 
1006
          <td>)</td>
 
1007
          <td></td><td></td><td></td>
 
1008
        </tr>
 
1009
      </table>
 
1010
</div>
 
1011
<div class="memdoc">
 
1012
 
 
1013
<p>Deletes a file or directory. </p>
 
1014
<dl><dt><b>Parameters:</b></dt><dd>
 
1015
  <table border="0" cellspacing="2" cellpadding="0">
 
1016
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use. </td></tr>
 
1017
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>The path to delete. (must be a fully-qualified path)</td></tr>
 
1018
  </table>
 
1019
  </dd>
 
1020
</dl>
 
1021
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
1022
 
 
1023
</div>
 
1024
</div>
 
1025
<a class="anchor" id="a0c783fb34679a9be39e96aeac2f38801"></a><!-- doxytag: member="afc.h::afc_rename_path" ref="a0c783fb34679a9be39e96aeac2f38801" args="(afc_client_t client, const char *from, const char *to)" -->
 
1026
<div class="memitem">
 
1027
<div class="memproto">
 
1028
      <table class="memname">
 
1029
        <tr>
 
1030
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_rename_path </td>
 
1031
          <td>(</td>
 
1032
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
1033
          <td class="paramname"> <em>client</em>, </td>
 
1034
        </tr>
 
1035
        <tr>
 
1036
          <td class="paramkey"></td>
 
1037
          <td></td>
 
1038
          <td class="paramtype">const char *&nbsp;</td>
 
1039
          <td class="paramname"> <em>from</em>, </td>
 
1040
        </tr>
 
1041
        <tr>
 
1042
          <td class="paramkey"></td>
 
1043
          <td></td>
 
1044
          <td class="paramtype">const char *&nbsp;</td>
 
1045
          <td class="paramname"> <em>to</em></td><td>&nbsp;</td>
 
1046
        </tr>
 
1047
        <tr>
 
1048
          <td></td>
 
1049
          <td>)</td>
 
1050
          <td></td><td></td><td></td>
 
1051
        </tr>
 
1052
      </table>
 
1053
</div>
 
1054
<div class="memdoc">
 
1055
 
 
1056
<p>Renames a file or directory on the phone. </p>
 
1057
<dl><dt><b>Parameters:</b></dt><dd>
 
1058
  <table border="0" cellspacing="2" cellpadding="0">
 
1059
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to have rename. </td></tr>
 
1060
    <tr><td valign="top"></td><td valign="top"><em>from</em>&nbsp;</td><td>The name to rename from. (must be a fully-qualified path) </td></tr>
 
1061
    <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>The new name. (must also be a fully-qualified path)</td></tr>
 
1062
  </table>
 
1063
  </dd>
 
1064
</dl>
 
1065
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
1066
 
 
1067
</div>
 
1068
</div>
 
1069
<a class="anchor" id="a7783580ec92f8374e1e0836ac006cf07"></a><!-- doxytag: member="afc.h::afc_set_file_time" ref="a7783580ec92f8374e1e0836ac006cf07" args="(afc_client_t client, const char *path, uint64_t mtime)" -->
 
1070
<div class="memitem">
 
1071
<div class="memproto">
 
1072
      <table class="memname">
 
1073
        <tr>
 
1074
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_set_file_time </td>
 
1075
          <td>(</td>
 
1076
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
1077
          <td class="paramname"> <em>client</em>, </td>
 
1078
        </tr>
 
1079
        <tr>
 
1080
          <td class="paramkey"></td>
 
1081
          <td></td>
 
1082
          <td class="paramtype">const char *&nbsp;</td>
 
1083
          <td class="paramname"> <em>path</em>, </td>
 
1084
        </tr>
 
1085
        <tr>
 
1086
          <td class="paramkey"></td>
 
1087
          <td></td>
 
1088
          <td class="paramtype">uint64_t&nbsp;</td>
 
1089
          <td class="paramname"> <em>mtime</em></td><td>&nbsp;</td>
 
1090
        </tr>
 
1091
        <tr>
 
1092
          <td></td>
 
1093
          <td>)</td>
 
1094
          <td></td><td></td><td></td>
 
1095
        </tr>
 
1096
      </table>
 
1097
</div>
 
1098
<div class="memdoc">
 
1099
 
 
1100
<p>Sets the modification time of a file on the phone. </p>
 
1101
<dl><dt><b>Parameters:</b></dt><dd>
 
1102
  <table border="0" cellspacing="2" cellpadding="0">
 
1103
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to set the file size. </td></tr>
 
1104
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>Path of the file for which the modification time should be set. </td></tr>
 
1105
    <tr><td valign="top"></td><td valign="top"><em>mtime</em>&nbsp;</td><td>The modification time to set in nanoseconds since epoch.</td></tr>
 
1106
  </table>
 
1107
  </dd>
 
1108
</dl>
 
1109
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
1110
 
 
1111
</div>
 
1112
</div>
 
1113
<a class="anchor" id="a8b2a2e73c45e378379fe3e7daddd717b"></a><!-- doxytag: member="afc.h::afc_truncate" ref="a8b2a2e73c45e378379fe3e7daddd717b" args="(afc_client_t client, const char *path, uint64_t newsize)" -->
 
1114
<div class="memitem">
 
1115
<div class="memproto">
 
1116
      <table class="memname">
 
1117
        <tr>
 
1118
          <td class="memname"><a class="el" href="include_2libimobiledevice_2afc_8h.html#afa46b7e1ac472a5589d85d6a6a7104fb">afc_error_t</a> afc_truncate </td>
 
1119
          <td>(</td>
 
1120
          <td class="paramtype"><a class="el" href="structafc__client__private.html">afc_client_t</a>&nbsp;</td>
 
1121
          <td class="paramname"> <em>client</em>, </td>
 
1122
        </tr>
 
1123
        <tr>
 
1124
          <td class="paramkey"></td>
 
1125
          <td></td>
 
1126
          <td class="paramtype">const char *&nbsp;</td>
 
1127
          <td class="paramname"> <em>path</em>, </td>
 
1128
        </tr>
 
1129
        <tr>
 
1130
          <td class="paramkey"></td>
 
1131
          <td></td>
 
1132
          <td class="paramtype">uint64_t&nbsp;</td>
 
1133
          <td class="paramname"> <em>newsize</em></td><td>&nbsp;</td>
 
1134
        </tr>
 
1135
        <tr>
 
1136
          <td></td>
 
1137
          <td>)</td>
 
1138
          <td></td><td></td><td></td>
 
1139
        </tr>
 
1140
      </table>
 
1141
</div>
 
1142
<div class="memdoc">
 
1143
 
 
1144
<p>Sets the size of a file on the phone without prior opening it. </p>
 
1145
<dl><dt><b>Parameters:</b></dt><dd>
 
1146
  <table border="0" cellspacing="2" cellpadding="0">
 
1147
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to set the file size. </td></tr>
 
1148
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>The path of the file to be truncated. </td></tr>
 
1149
    <tr><td valign="top"></td><td valign="top"><em>newsize</em>&nbsp;</td><td>The size to set the file to.</td></tr>
 
1150
  </table>
 
1151
  </dd>
 
1152
</dl>
 
1153
<dl class="return"><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value. </dd></dl>
 
1154
 
 
1155
</div>
 
1156
</div>
 
1157
</div>
 
1158
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Mar 21 09:43:43 2010 for libimobiledevice by&nbsp;
 
1159
<a href="http://www.doxygen.org/index.html">
 
1160
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
 
1161
</body>
 
1162
</html>