~ubuntu-branches/ubuntu/lucid/libimobiledevice/lucid

« back to all changes in this revision

Viewing changes to docs/html/include_2libiphone_2_a_f_c_8h.html

  • Committer: Bazaar Package Importer
  • Author(s): Julien Lavergne
  • Date: 2010-02-02 21:19:51 UTC
  • Revision ID: james.westby@ubuntu.com-20100202211951-qv87ejwmucigqezf
Tags: upstream-0.9.7
ImportĀ upstreamĀ versionĀ 0.9.7

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
 
3
<title>libiphone: libiphone/afc.h File Reference</title>
 
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
 
5
<link href="tabs.css" rel="stylesheet" type="text/css">
 
6
</head><body>
 
7
<!-- Generated by Doxygen 1.5.6 -->
 
8
<div class="navigation" id="top">
 
9
  <div class="tabs">
 
10
    <ul>
 
11
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
 
12
      <li class="current"><a href="files.html"><span>Files</span></a></li>
 
13
    </ul>
 
14
  </div>
 
15
</div>
 
16
<div class="contents">
 
17
<h1>libiphone/afc.h File Reference</h1>AFC Implementation. <a href="#_details">More...</a>
 
18
<p>
 
19
<table border="0" cellpadding="0" cellspacing="0">
 
20
<tr><td></td></tr>
 
21
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
 
22
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b07433a380539e391b7a5c7705e942f6"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_SUCCESS" ref="b07433a380539e391b7a5c7705e942f6" args="" -->
 
23
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_SUCCESS</b>&nbsp;&nbsp;&nbsp;0</td></tr>
 
24
 
 
25
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1926af9401f4270b0f1b564fa24b99a"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_UNKNOWN_ERROR" ref="a1926af9401f4270b0f1b564fa24b99a" args="" -->
 
26
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_UNKNOWN_ERROR</b>&nbsp;&nbsp;&nbsp;1</td></tr>
 
27
 
 
28
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dee408e5e39812c6e22af1b16ad38b9d"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OP_HEADER_INVALID" ref="dee408e5e39812c6e22af1b16ad38b9d" args="" -->
 
29
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_HEADER_INVALID</b>&nbsp;&nbsp;&nbsp;2</td></tr>
 
30
 
 
31
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f9f4a1e1b7c5991a085e6cca7d03069c"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_NO_RESOURCES" ref="f9f4a1e1b7c5991a085e6cca7d03069c" args="" -->
 
32
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NO_RESOURCES</b>&nbsp;&nbsp;&nbsp;3</td></tr>
 
33
 
 
34
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c53787a704f318a1378e67a2bd54821"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_READ_ERROR" ref="5c53787a704f318a1378e67a2bd54821" args="" -->
 
35
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_READ_ERROR</b>&nbsp;&nbsp;&nbsp;4</td></tr>
 
36
 
 
37
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7d4fa779457277f4abc52f66770144c1"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_WRITE_ERROR" ref="7d4fa779457277f4abc52f66770144c1" args="" -->
 
38
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_WRITE_ERROR</b>&nbsp;&nbsp;&nbsp;5</td></tr>
 
39
 
 
40
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05e656de9a72fff6232651f75baf0fb2"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_UNKNOWN_PACKET_TYPE" ref="05e656de9a72fff6232651f75baf0fb2" args="" -->
 
41
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_UNKNOWN_PACKET_TYPE</b>&nbsp;&nbsp;&nbsp;6</td></tr>
 
42
 
 
43
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb24acbfc2553a31ddc93e89763a6671"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_INVALID_ARGUMENT" ref="eb24acbfc2553a31ddc93e89763a6671" args="" -->
 
44
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_INVALID_ARGUMENT</b>&nbsp;&nbsp;&nbsp;7</td></tr>
 
45
 
 
46
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d45141ba3f4448a4b8a59d4a2fb41477"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OBJECT_NOT_FOUND" ref="d45141ba3f4448a4b8a59d4a2fb41477" args="" -->
 
47
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_NOT_FOUND</b>&nbsp;&nbsp;&nbsp;8</td></tr>
 
48
 
 
49
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad61a9270ebe5fab4fe6d7abeffe5e03"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OBJECT_IS_DIR" ref="ad61a9270ebe5fab4fe6d7abeffe5e03" args="" -->
 
50
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_IS_DIR</b>&nbsp;&nbsp;&nbsp;9</td></tr>
 
51
 
 
52
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="851876a334167f788b36bed750612b6d"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_PERM_DENIED" ref="851876a334167f788b36bed750612b6d" args="" -->
 
53
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_PERM_DENIED</b>&nbsp;&nbsp;&nbsp;10</td></tr>
 
54
 
 
55
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5430bdc338ac51057460593e9829117f"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_SERVICE_NOT_CONNECTED" ref="5430bdc338ac51057460593e9829117f" args="" -->
 
56
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_SERVICE_NOT_CONNECTED</b>&nbsp;&nbsp;&nbsp;11</td></tr>
 
57
 
 
58
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78934c5e55d17e0112fd4b5ebe1bad49"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OP_TIMEOUT" ref="78934c5e55d17e0112fd4b5ebe1bad49" args="" -->
 
59
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_TIMEOUT</b>&nbsp;&nbsp;&nbsp;12</td></tr>
 
60
 
 
61
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3181ea4588a8943710a4a70d7a4a653d"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_TOO_MUCH_DATA" ref="3181ea4588a8943710a4a70d7a4a653d" args="" -->
 
62
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_TOO_MUCH_DATA</b>&nbsp;&nbsp;&nbsp;13</td></tr>
 
63
 
 
64
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a94fc6f077acc4be683b3d08b15373f"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_END_OF_DATA" ref="8a94fc6f077acc4be683b3d08b15373f" args="" -->
 
65
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_END_OF_DATA</b>&nbsp;&nbsp;&nbsp;14</td></tr>
 
66
 
 
67
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c47b554f4ee2671f9dd4142e7fb42dff"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OP_NOT_SUPPORTED" ref="c47b554f4ee2671f9dd4142e7fb42dff" args="" -->
 
68
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_NOT_SUPPORTED</b>&nbsp;&nbsp;&nbsp;15</td></tr>
 
69
 
 
70
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="72bb97c20d794e8f81b008a422734735"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OBJECT_EXISTS" ref="72bb97c20d794e8f81b008a422734735" args="" -->
 
71
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_EXISTS</b>&nbsp;&nbsp;&nbsp;16</td></tr>
 
72
 
 
73
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c77bea2fd6574c304c89d1691bc8525"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OBJECT_BUSY" ref="7c77bea2fd6574c304c89d1691bc8525" args="" -->
 
74
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OBJECT_BUSY</b>&nbsp;&nbsp;&nbsp;17</td></tr>
 
75
 
 
76
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ef3970c52be6569d2a0211029d6b429"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_NO_SPACE_LEFT" ref="8ef3970c52be6569d2a0211029d6b429" args="" -->
 
77
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NO_SPACE_LEFT</b>&nbsp;&nbsp;&nbsp;18</td></tr>
 
78
 
 
79
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="267bd6031da001632b9bceb2bda2368a"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OP_WOULD_BLOCK" ref="267bd6031da001632b9bceb2bda2368a" args="" -->
 
80
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_WOULD_BLOCK</b>&nbsp;&nbsp;&nbsp;19</td></tr>
 
81
 
 
82
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="700ab04a8e9a57232703ae424eb7949e"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_IO_ERROR" ref="700ab04a8e9a57232703ae424eb7949e" args="" -->
 
83
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_IO_ERROR</b>&nbsp;&nbsp;&nbsp;20</td></tr>
 
84
 
 
85
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="48a536950b1375cbcbdb7b4ccfce60c7"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OP_INTERRUPTED" ref="48a536950b1375cbcbdb7b4ccfce60c7" args="" -->
 
86
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_INTERRUPTED</b>&nbsp;&nbsp;&nbsp;21</td></tr>
 
87
 
 
88
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9bbe91a7184d137eec542631cef82c54"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_OP_IN_PROGRESS" ref="9bbe91a7184d137eec542631cef82c54" args="" -->
 
89
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_OP_IN_PROGRESS</b>&nbsp;&nbsp;&nbsp;22</td></tr>
 
90
 
 
91
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="55c4136e5ffc221debf292dfec7ba9f6"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_INTERNAL_ERROR" ref="55c4136e5ffc221debf292dfec7ba9f6" args="" -->
 
92
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_INTERNAL_ERROR</b>&nbsp;&nbsp;&nbsp;23</td></tr>
 
93
 
 
94
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b9dc49253e9a538348288ac1fff89d40"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_MUX_ERROR" ref="b9dc49253e9a538348288ac1fff89d40" args="" -->
 
95
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_MUX_ERROR</b>&nbsp;&nbsp;&nbsp;30</td></tr>
 
96
 
 
97
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b547b433e90e0707b024f3a244464b6c"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_NO_MEM" ref="b547b433e90e0707b024f3a244464b6c" args="" -->
 
98
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NO_MEM</b>&nbsp;&nbsp;&nbsp;31</td></tr>
 
99
 
 
100
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="68604b8c3198ee0f540d4634cbc031ba"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_NOT_ENOUGH_DATA" ref="68604b8c3198ee0f540d4634cbc031ba" args="" -->
 
101
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_NOT_ENOUGH_DATA</b>&nbsp;&nbsp;&nbsp;32</td></tr>
 
102
 
 
103
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d021c046a5ab15a9a981d54ec0e58c44"></a><!-- doxytag: member="include/libiphone/AFC.h::AFC_E_DIR_NOT_EMPTY" ref="d021c046a5ab15a9a981d54ec0e58c44" args="" -->
 
104
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>AFC_E_DIR_NOT_EMPTY</b>&nbsp;&nbsp;&nbsp;33</td></tr>
 
105
 
 
106
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
 
107
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fa46b7e1ac472a5589d85d6a6a7104fb"></a><!-- doxytag: member="include/libiphone/AFC.h::afc_error_t" ref="fa46b7e1ac472a5589d85d6a6a7104fb" args="" -->
 
108
typedef int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>afc_error_t</b></td></tr>
 
109
 
 
110
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="588a845d2a3980a4f4f1107619a4eda5"></a><!-- doxytag: member="include/libiphone/AFC.h::afc_client_t" ref="588a845d2a3980a4f4f1107619a4eda5" args="" -->
 
111
typedef struct afc_client_int *&nbsp;</td><td class="memItemRight" valign="bottom"><b>afc_client_t</b></td></tr>
 
112
 
 
113
<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
 
114
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>afc_file_mode_t</b> { <br>
 
115
&nbsp;&nbsp;<b>AFC_FOPEN_RDONLY</b> =  0x00000001, 
 
116
<b>AFC_FOPEN_RW</b> =  0x00000002, 
 
117
<b>AFC_FOPEN_WRONLY</b> =  0x00000003, 
 
118
<b>AFC_FOPEN_WR</b> =  0x00000004, 
 
119
<br>
 
120
&nbsp;&nbsp;<b>AFC_FOPEN_APPEND</b> =  0x00000005, 
 
121
<b>AFC_FOPEN_RDAPPEND</b> =  0x00000006
 
122
<br>
 
123
 }</td></tr>
 
124
 
 
125
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>afc_link_type_t</b> { <b>AFC_HARDLINK</b> =  1, 
 
126
<b>AFC_SYMLINK</b> =  2
 
127
 }</td></tr>
 
128
 
 
129
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>afc_lock_op_t</b> { <b>AFC_LOCK_SH</b> =  1 | 4, 
 
130
<b>AFC_LOCK_EX</b> =  2 | 4, 
 
131
<b>AFC_LOCK_UN</b> =  8 | 4
 
132
 }</td></tr>
 
133
 
 
134
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
 
135
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#aa6779ea2d15302f7ff812ba5863c8a5">afc_client_new</a> (iphone_device_t device, int dst_port, afc_client_t *client)</td></tr>
 
136
 
 
137
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Makes a connection to the AFC service on the phone.  <a href="#aa6779ea2d15302f7ff812ba5863c8a5"></a><br></td></tr>
 
138
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#1cee6b357bdd7f187b7411a41c136412">afc_client_free</a> (afc_client_t client)</td></tr>
 
139
 
 
140
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Disconnects an AFC client from the phone.  <a href="#1cee6b357bdd7f187b7411a41c136412"></a><br></td></tr>
 
141
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#b4b5ee19121c0283364d3cee5b72cc15">afc_get_device_info</a> (afc_client_t client, char ***infos)</td></tr>
 
142
 
 
143
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get device info for a client connection to phone.  <a href="#b4b5ee19121c0283364d3cee5b72cc15"></a><br></td></tr>
 
144
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#a5dcaf88c17b087b5140fe9a9ada21b0">afc_read_directory</a> (afc_client_t client, const char *dir, char ***list)</td></tr>
 
145
 
 
146
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a directory listing of the directory requested.  <a href="#a5dcaf88c17b087b5140fe9a9ada21b0"></a><br></td></tr>
 
147
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#0b7a62789a2208576ebc1c7794f30f13">afc_get_file_info</a> (afc_client_t client, const char *filename, char ***infolist)</td></tr>
 
148
 
 
149
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets information about a specific file.  <a href="#0b7a62789a2208576ebc1c7794f30f13"></a><br></td></tr>
 
150
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#2dbfca1d64e26daf9691ba2ddabc92ba">afc_file_open</a> (afc_client_t client, const char *filename, afc_file_mode_t file_mode, uint64_t *handle)</td></tr>
 
151
 
 
152
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Opens a file on the phone.  <a href="#2dbfca1d64e26daf9691ba2ddabc92ba"></a><br></td></tr>
 
153
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#db90e6f46af885948a91d328ca2e8c21">afc_file_close</a> (afc_client_t client, uint64_t handle)</td></tr>
 
154
 
 
155
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Closes a file on the phone.  <a href="#db90e6f46af885948a91d328ca2e8c21"></a><br></td></tr>
 
156
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#37c91f506bdab578d2eec9145fd7d9a7">afc_file_lock</a> (afc_client_t client, uint64_t handle, afc_lock_op_t operation)</td></tr>
 
157
 
 
158
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locks or unlocks a file on the phone.  <a href="#37c91f506bdab578d2eec9145fd7d9a7"></a><br></td></tr>
 
159
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#25060be975b82d41e6c8b0130529eab5">afc_file_read</a> (afc_client_t client, uint64_t handle, char *data, int length, uint32_t *bytes)</td></tr>
 
160
 
 
161
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to the read the given number of bytes from the given file.  <a href="#25060be975b82d41e6c8b0130529eab5"></a><br></td></tr>
 
162
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#a20ce3eb68f9fc11f37715c1e99163f8">afc_file_write</a> (afc_client_t client, uint64_t handle, const char *data, int length, uint32_t *bytes)</td></tr>
 
163
 
 
164
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes a given number of bytes to a file.  <a href="#a20ce3eb68f9fc11f37715c1e99163f8"></a><br></td></tr>
 
165
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#3f0ebaea303e1fe2b84082ca40e3468d">afc_file_seek</a> (afc_client_t client, uint64_t handle, int64_t offset, int whence)</td></tr>
 
166
 
 
167
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Seeks to a given position of a pre-opened file on the phone.  <a href="#3f0ebaea303e1fe2b84082ca40e3468d"></a><br></td></tr>
 
168
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#5ba8a781ea81b2ce09d2fd8a182b3624">afc_file_tell</a> (afc_client_t client, uint64_t handle, uint64_t *position)</td></tr>
 
169
 
 
170
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns current position in a pre-opened file on the phone.  <a href="#5ba8a781ea81b2ce09d2fd8a182b3624"></a><br></td></tr>
 
171
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#d1e44fb7e9b6445841813f522705a721">afc_file_truncate</a> (afc_client_t client, uint64_t handle, uint64_t newsize)</td></tr>
 
172
 
 
173
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the size of a file on the phone.  <a href="#d1e44fb7e9b6445841813f522705a721"></a><br></td></tr>
 
174
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#efd69b3b2168543c06833f9507858b63">afc_remove_path</a> (afc_client_t client, const char *path)</td></tr>
 
175
 
 
176
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a file or directory.  <a href="#efd69b3b2168543c06833f9507858b63"></a><br></td></tr>
 
177
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#0c783fb34679a9be39e96aeac2f38801">afc_rename_path</a> (afc_client_t client, const char *from, const char *to)</td></tr>
 
178
 
 
179
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Renames a file or directory on the phone.  <a href="#0c783fb34679a9be39e96aeac2f38801"></a><br></td></tr>
 
180
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#57135ac755a1312271d7218432238008">afc_make_directory</a> (afc_client_t client, const char *dir)</td></tr>
 
181
 
 
182
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a directory on the phone.  <a href="#57135ac755a1312271d7218432238008"></a><br></td></tr>
 
183
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#86f3020f7a685bbf7f078fea12df555f">afc_truncate</a> (afc_client_t client, const char *path, off_t newsize)</td></tr>
 
184
 
 
185
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the size of a file on the phone without prior opening it.  <a href="#86f3020f7a685bbf7f078fea12df555f"></a><br></td></tr>
 
186
<tr><td class="memItemLeft" nowrap align="right" valign="top">afc_error_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#b5ade933b44d1f913df91d1065faa33a">afc_make_link</a> (afc_client_t client, afc_link_type_t linktype, const char *target, const char *linkname)</td></tr>
 
187
 
 
188
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a hard link or symbolic link on the device.  <a href="#b5ade933b44d1f913df91d1065faa33a"></a><br></td></tr>
 
189
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2libiphone_2_a_f_c_8h.html#e8224617f5f6f8d17f77932c0e8e07a4">afc_get_device_info_field</a> (afc_client_t client, const char *field)</td></tr>
 
190
 
 
191
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a specific field of the device info for a client connection to phone.  <a href="#e8224617f5f6f8d17f77932c0e8e07a4"></a><br></td></tr>
 
192
</table>
 
193
<hr><a name="_details"></a><h2>Detailed Description</h2>
 
194
AFC Implementation. 
 
195
<p>
 
196
<hr><h2>Function Documentation</h2>
 
197
<a class="anchor" name="1cee6b357bdd7f187b7411a41c136412"></a><!-- doxytag: member="afc.h::afc_client_free" ref="1cee6b357bdd7f187b7411a41c136412" args="(afc_client_t client)" -->
 
198
<div class="memitem">
 
199
<div class="memproto">
 
200
      <table class="memname">
 
201
        <tr>
 
202
          <td class="memname">afc_error_t afc_client_free           </td>
 
203
          <td>(</td>
 
204
          <td class="paramtype">afc_client_t&nbsp;</td>
 
205
          <td class="paramname"> <em>client</em>          </td>
 
206
          <td>&nbsp;)&nbsp;</td>
 
207
          <td></td>
 
208
        </tr>
 
209
      </table>
 
210
</div>
 
211
<div class="memdoc">
 
212
 
 
213
<p>
 
214
Disconnects an AFC client from the phone. 
 
215
<p>
 
216
<dl compact><dt><b>Parameters:</b></dt><dd>
 
217
  <table border="0" cellspacing="2" cellpadding="0">
 
218
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to disconnect. </td></tr>
 
219
  </table>
 
220
</dl>
 
221
 
 
222
</div>
 
223
</div><p>
 
224
<a class="anchor" name="aa6779ea2d15302f7ff812ba5863c8a5"></a><!-- doxytag: member="afc.h::afc_client_new" ref="aa6779ea2d15302f7ff812ba5863c8a5" args="(iphone_device_t device, int dst_port, afc_client_t *client)" -->
 
225
<div class="memitem">
 
226
<div class="memproto">
 
227
      <table class="memname">
 
228
        <tr>
 
229
          <td class="memname">afc_error_t afc_client_new           </td>
 
230
          <td>(</td>
 
231
          <td class="paramtype">iphone_device_t&nbsp;</td>
 
232
          <td class="paramname"> <em>device</em>, </td>
 
233
        </tr>
 
234
        <tr>
 
235
          <td class="paramkey"></td>
 
236
          <td></td>
 
237
          <td class="paramtype">int&nbsp;</td>
 
238
          <td class="paramname"> <em>dst_port</em>, </td>
 
239
        </tr>
 
240
        <tr>
 
241
          <td class="paramkey"></td>
 
242
          <td></td>
 
243
          <td class="paramtype">afc_client_t *&nbsp;</td>
 
244
          <td class="paramname"> <em>client</em></td><td>&nbsp;</td>
 
245
        </tr>
 
246
        <tr>
 
247
          <td></td>
 
248
          <td>)</td>
 
249
          <td></td><td></td><td></td>
 
250
        </tr>
 
251
      </table>
 
252
</div>
 
253
<div class="memdoc">
 
254
 
 
255
<p>
 
256
Makes a connection to the AFC service on the phone. 
 
257
<p>
 
258
<dl compact><dt><b>Parameters:</b></dt><dd>
 
259
  <table border="0" cellspacing="2" cellpadding="0">
 
260
    <tr><td valign="top"></td><td valign="top"><em>phone</em>&nbsp;</td><td>The iPhone to connect on. </td></tr>
 
261
    <tr><td valign="top"></td><td valign="top"><em>s_port</em>&nbsp;</td><td>The source port. </td></tr>
 
262
    <tr><td valign="top"></td><td valign="top"><em>d_port</em>&nbsp;</td><td>The destination port.</td></tr>
 
263
  </table>
 
264
</dl>
 
265
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A handle to the newly-connected client or NULL upon error. </dd></dl>
 
266
 
 
267
</div>
 
268
</div><p>
 
269
<a class="anchor" name="db90e6f46af885948a91d328ca2e8c21"></a><!-- doxytag: member="afc.h::afc_file_close" ref="db90e6f46af885948a91d328ca2e8c21" args="(afc_client_t client, uint64_t handle)" -->
 
270
<div class="memitem">
 
271
<div class="memproto">
 
272
      <table class="memname">
 
273
        <tr>
 
274
          <td class="memname">afc_error_t afc_file_close           </td>
 
275
          <td>(</td>
 
276
          <td class="paramtype">afc_client_t&nbsp;</td>
 
277
          <td class="paramname"> <em>client</em>, </td>
 
278
        </tr>
 
279
        <tr>
 
280
          <td class="paramkey"></td>
 
281
          <td></td>
 
282
          <td class="paramtype">uint64_t&nbsp;</td>
 
283
          <td class="paramname"> <em>handle</em></td><td>&nbsp;</td>
 
284
        </tr>
 
285
        <tr>
 
286
          <td></td>
 
287
          <td>)</td>
 
288
          <td></td><td></td><td></td>
 
289
        </tr>
 
290
      </table>
 
291
</div>
 
292
<div class="memdoc">
 
293
 
 
294
<p>
 
295
Closes a file on the phone. 
 
296
<p>
 
297
<dl compact><dt><b>Parameters:</b></dt><dd>
 
298
  <table border="0" cellspacing="2" cellpadding="0">
 
299
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to close the file with. </td></tr>
 
300
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
301
  </table>
 
302
</dl>
 
303
 
 
304
</div>
 
305
</div><p>
 
306
<a class="anchor" name="37c91f506bdab578d2eec9145fd7d9a7"></a><!-- doxytag: member="afc.h::afc_file_lock" ref="37c91f506bdab578d2eec9145fd7d9a7" args="(afc_client_t client, uint64_t handle, afc_lock_op_t operation)" -->
 
307
<div class="memitem">
 
308
<div class="memproto">
 
309
      <table class="memname">
 
310
        <tr>
 
311
          <td class="memname">afc_error_t afc_file_lock           </td>
 
312
          <td>(</td>
 
313
          <td class="paramtype">afc_client_t&nbsp;</td>
 
314
          <td class="paramname"> <em>client</em>, </td>
 
315
        </tr>
 
316
        <tr>
 
317
          <td class="paramkey"></td>
 
318
          <td></td>
 
319
          <td class="paramtype">uint64_t&nbsp;</td>
 
320
          <td class="paramname"> <em>handle</em>, </td>
 
321
        </tr>
 
322
        <tr>
 
323
          <td class="paramkey"></td>
 
324
          <td></td>
 
325
          <td class="paramtype">afc_lock_op_t&nbsp;</td>
 
326
          <td class="paramname"> <em>operation</em></td><td>&nbsp;</td>
 
327
        </tr>
 
328
        <tr>
 
329
          <td></td>
 
330
          <td>)</td>
 
331
          <td></td><td></td><td></td>
 
332
        </tr>
 
333
      </table>
 
334
</div>
 
335
<div class="memdoc">
 
336
 
 
337
<p>
 
338
Locks or unlocks a file on the phone. 
 
339
<p>
 
340
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>
 
341
<dl compact><dt><b>Parameters:</b></dt><dd>
 
342
  <table border="0" cellspacing="2" cellpadding="0">
 
343
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to lock the file with. </td></tr>
 
344
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
345
    <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>
 
346
  </table>
 
347
</dl>
 
348
 
 
349
</div>
 
350
</div><p>
 
351
<a class="anchor" name="2dbfca1d64e26daf9691ba2ddabc92ba"></a><!-- doxytag: member="afc.h::afc_file_open" ref="2dbfca1d64e26daf9691ba2ddabc92ba" args="(afc_client_t client, const char *filename, afc_file_mode_t file_mode, uint64_t *handle)" -->
 
352
<div class="memitem">
 
353
<div class="memproto">
 
354
      <table class="memname">
 
355
        <tr>
 
356
          <td class="memname">afc_error_t afc_file_open           </td>
 
357
          <td>(</td>
 
358
          <td class="paramtype">afc_client_t&nbsp;</td>
 
359
          <td class="paramname"> <em>client</em>, </td>
 
360
        </tr>
 
361
        <tr>
 
362
          <td class="paramkey"></td>
 
363
          <td></td>
 
364
          <td class="paramtype">const char *&nbsp;</td>
 
365
          <td class="paramname"> <em>filename</em>, </td>
 
366
        </tr>
 
367
        <tr>
 
368
          <td class="paramkey"></td>
 
369
          <td></td>
 
370
          <td class="paramtype">afc_file_mode_t&nbsp;</td>
 
371
          <td class="paramname"> <em>file_mode</em>, </td>
 
372
        </tr>
 
373
        <tr>
 
374
          <td class="paramkey"></td>
 
375
          <td></td>
 
376
          <td class="paramtype">uint64_t *&nbsp;</td>
 
377
          <td class="paramname"> <em>handle</em></td><td>&nbsp;</td>
 
378
        </tr>
 
379
        <tr>
 
380
          <td></td>
 
381
          <td>)</td>
 
382
          <td></td><td></td><td></td>
 
383
        </tr>
 
384
      </table>
 
385
</div>
 
386
<div class="memdoc">
 
387
 
 
388
<p>
 
389
Opens a file on the phone. 
 
390
<p>
 
391
<dl compact><dt><b>Parameters:</b></dt><dd>
 
392
  <table border="0" cellspacing="2" cellpadding="0">
 
393
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to open the file. </td></tr>
 
394
    <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>
 
395
    <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>
 
396
    <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>
 
397
  </table>
 
398
</dl>
 
399
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error on failure. </dd></dl>
 
400
 
 
401
</div>
 
402
</div><p>
 
403
<a class="anchor" name="25060be975b82d41e6c8b0130529eab5"></a><!-- doxytag: member="afc.h::afc_file_read" ref="25060be975b82d41e6c8b0130529eab5" args="(afc_client_t client, uint64_t handle, char *data, int length, uint32_t *bytes)" -->
 
404
<div class="memitem">
 
405
<div class="memproto">
 
406
      <table class="memname">
 
407
        <tr>
 
408
          <td class="memname">afc_error_t afc_file_read           </td>
 
409
          <td>(</td>
 
410
          <td class="paramtype">afc_client_t&nbsp;</td>
 
411
          <td class="paramname"> <em>client</em>, </td>
 
412
        </tr>
 
413
        <tr>
 
414
          <td class="paramkey"></td>
 
415
          <td></td>
 
416
          <td class="paramtype">uint64_t&nbsp;</td>
 
417
          <td class="paramname"> <em>handle</em>, </td>
 
418
        </tr>
 
419
        <tr>
 
420
          <td class="paramkey"></td>
 
421
          <td></td>
 
422
          <td class="paramtype">char *&nbsp;</td>
 
423
          <td class="paramname"> <em>data</em>, </td>
 
424
        </tr>
 
425
        <tr>
 
426
          <td class="paramkey"></td>
 
427
          <td></td>
 
428
          <td class="paramtype">int&nbsp;</td>
 
429
          <td class="paramname"> <em>length</em>, </td>
 
430
        </tr>
 
431
        <tr>
 
432
          <td class="paramkey"></td>
 
433
          <td></td>
 
434
          <td class="paramtype">uint32_t *&nbsp;</td>
 
435
          <td class="paramname"> <em>bytes</em></td><td>&nbsp;</td>
 
436
        </tr>
 
437
        <tr>
 
438
          <td></td>
 
439
          <td>)</td>
 
440
          <td></td><td></td><td></td>
 
441
        </tr>
 
442
      </table>
 
443
</div>
 
444
<div class="memdoc">
 
445
 
 
446
<p>
 
447
Attempts to the read the given number of bytes from the given file. 
 
448
<p>
 
449
<dl compact><dt><b>Parameters:</b></dt><dd>
 
450
  <table border="0" cellspacing="2" cellpadding="0">
 
451
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The relevant AFC client </td></tr>
 
452
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file </td></tr>
 
453
    <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>
 
454
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of bytes to read</td></tr>
 
455
  </table>
 
456
</dl>
 
457
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The number of bytes read if successful. If there was an error -1. </dd></dl>
 
458
 
 
459
</div>
 
460
</div><p>
 
461
<a class="anchor" name="3f0ebaea303e1fe2b84082ca40e3468d"></a><!-- doxytag: member="afc.h::afc_file_seek" ref="3f0ebaea303e1fe2b84082ca40e3468d" args="(afc_client_t client, uint64_t handle, int64_t offset, int whence)" -->
 
462
<div class="memitem">
 
463
<div class="memproto">
 
464
      <table class="memname">
 
465
        <tr>
 
466
          <td class="memname">afc_error_t afc_file_seek           </td>
 
467
          <td>(</td>
 
468
          <td class="paramtype">afc_client_t&nbsp;</td>
 
469
          <td class="paramname"> <em>client</em>, </td>
 
470
        </tr>
 
471
        <tr>
 
472
          <td class="paramkey"></td>
 
473
          <td></td>
 
474
          <td class="paramtype">uint64_t&nbsp;</td>
 
475
          <td class="paramname"> <em>handle</em>, </td>
 
476
        </tr>
 
477
        <tr>
 
478
          <td class="paramkey"></td>
 
479
          <td></td>
 
480
          <td class="paramtype">int64_t&nbsp;</td>
 
481
          <td class="paramname"> <em>offset</em>, </td>
 
482
        </tr>
 
483
        <tr>
 
484
          <td class="paramkey"></td>
 
485
          <td></td>
 
486
          <td class="paramtype">int&nbsp;</td>
 
487
          <td class="paramname"> <em>whence</em></td><td>&nbsp;</td>
 
488
        </tr>
 
489
        <tr>
 
490
          <td></td>
 
491
          <td>)</td>
 
492
          <td></td><td></td><td></td>
 
493
        </tr>
 
494
      </table>
 
495
</div>
 
496
<div class="memdoc">
 
497
 
 
498
<p>
 
499
Seeks to a given position of a pre-opened file on the phone. 
 
500
<p>
 
501
<dl compact><dt><b>Parameters:</b></dt><dd>
 
502
  <table border="0" cellspacing="2" cellpadding="0">
 
503
    <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>
 
504
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened. </td></tr>
 
505
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>Seek offset. </td></tr>
 
506
    <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>
 
507
  </table>
 
508
</dl>
 
509
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success, AFC_E_NOT_ENOUGH_DATA on failure. </dd></dl>
 
510
 
 
511
</div>
 
512
</div><p>
 
513
<a class="anchor" name="5ba8a781ea81b2ce09d2fd8a182b3624"></a><!-- doxytag: member="afc.h::afc_file_tell" ref="5ba8a781ea81b2ce09d2fd8a182b3624" args="(afc_client_t client, uint64_t handle, uint64_t *position)" -->
 
514
<div class="memitem">
 
515
<div class="memproto">
 
516
      <table class="memname">
 
517
        <tr>
 
518
          <td class="memname">afc_error_t afc_file_tell           </td>
 
519
          <td>(</td>
 
520
          <td class="paramtype">afc_client_t&nbsp;</td>
 
521
          <td class="paramname"> <em>client</em>, </td>
 
522
        </tr>
 
523
        <tr>
 
524
          <td class="paramkey"></td>
 
525
          <td></td>
 
526
          <td class="paramtype">uint64_t&nbsp;</td>
 
527
          <td class="paramname"> <em>handle</em>, </td>
 
528
        </tr>
 
529
        <tr>
 
530
          <td class="paramkey"></td>
 
531
          <td></td>
 
532
          <td class="paramtype">uint64_t *&nbsp;</td>
 
533
          <td class="paramname"> <em>position</em></td><td>&nbsp;</td>
 
534
        </tr>
 
535
        <tr>
 
536
          <td></td>
 
537
          <td>)</td>
 
538
          <td></td><td></td><td></td>
 
539
        </tr>
 
540
      </table>
 
541
</div>
 
542
<div class="memdoc">
 
543
 
 
544
<p>
 
545
Returns current position in a pre-opened file on the phone. 
 
546
<p>
 
547
<dl compact><dt><b>Parameters:</b></dt><dd>
 
548
  <table border="0" cellspacing="2" cellpadding="0">
 
549
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use. </td></tr>
 
550
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
551
    <tr><td valign="top"></td><td valign="top"><em>position</em>&nbsp;</td><td>Position in bytes of indicator</td></tr>
 
552
  </table>
 
553
</dl>
 
554
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success, AFC_E_NOT_ENOUGH_DATA on failure. </dd></dl>
 
555
 
 
556
</div>
 
557
</div><p>
 
558
<a class="anchor" name="d1e44fb7e9b6445841813f522705a721"></a><!-- doxytag: member="afc.h::afc_file_truncate" ref="d1e44fb7e9b6445841813f522705a721" args="(afc_client_t client, uint64_t handle, uint64_t newsize)" -->
 
559
<div class="memitem">
 
560
<div class="memproto">
 
561
      <table class="memname">
 
562
        <tr>
 
563
          <td class="memname">afc_error_t afc_file_truncate           </td>
 
564
          <td>(</td>
 
565
          <td class="paramtype">afc_client_t&nbsp;</td>
 
566
          <td class="paramname"> <em>client</em>, </td>
 
567
        </tr>
 
568
        <tr>
 
569
          <td class="paramkey"></td>
 
570
          <td></td>
 
571
          <td class="paramtype">uint64_t&nbsp;</td>
 
572
          <td class="paramname"> <em>handle</em>, </td>
 
573
        </tr>
 
574
        <tr>
 
575
          <td class="paramkey"></td>
 
576
          <td></td>
 
577
          <td class="paramtype">uint64_t&nbsp;</td>
 
578
          <td class="paramname"> <em>newsize</em></td><td>&nbsp;</td>
 
579
        </tr>
 
580
        <tr>
 
581
          <td></td>
 
582
          <td>)</td>
 
583
          <td></td><td></td><td></td>
 
584
        </tr>
 
585
      </table>
 
586
</div>
 
587
<div class="memdoc">
 
588
 
 
589
<p>
 
590
Sets the size of a file on the phone. 
 
591
<p>
 
592
<dl compact><dt><b>Parameters:</b></dt><dd>
 
593
  <table border="0" cellspacing="2" cellpadding="0">
 
594
    <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>
 
595
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of a previously opened file. </td></tr>
 
596
    <tr><td valign="top"></td><td valign="top"><em>newsize</em>&nbsp;</td><td>The size to set the file to.</td></tr>
 
597
  </table>
 
598
</dl>
 
599
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, -1 on failure.</dd></dl>
 
600
<dl class="note" compact><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>
 
601
 
 
602
</div>
 
603
</div><p>
 
604
<a class="anchor" name="a20ce3eb68f9fc11f37715c1e99163f8"></a><!-- doxytag: member="afc.h::afc_file_write" ref="a20ce3eb68f9fc11f37715c1e99163f8" args="(afc_client_t client, uint64_t handle, const char *data, int length, uint32_t *bytes)" -->
 
605
<div class="memitem">
 
606
<div class="memproto">
 
607
      <table class="memname">
 
608
        <tr>
 
609
          <td class="memname">afc_error_t afc_file_write           </td>
 
610
          <td>(</td>
 
611
          <td class="paramtype">afc_client_t&nbsp;</td>
 
612
          <td class="paramname"> <em>client</em>, </td>
 
613
        </tr>
 
614
        <tr>
 
615
          <td class="paramkey"></td>
 
616
          <td></td>
 
617
          <td class="paramtype">uint64_t&nbsp;</td>
 
618
          <td class="paramname"> <em>handle</em>, </td>
 
619
        </tr>
 
620
        <tr>
 
621
          <td class="paramkey"></td>
 
622
          <td></td>
 
623
          <td class="paramtype">const char *&nbsp;</td>
 
624
          <td class="paramname"> <em>data</em>, </td>
 
625
        </tr>
 
626
        <tr>
 
627
          <td class="paramkey"></td>
 
628
          <td></td>
 
629
          <td class="paramtype">int&nbsp;</td>
 
630
          <td class="paramname"> <em>length</em>, </td>
 
631
        </tr>
 
632
        <tr>
 
633
          <td class="paramkey"></td>
 
634
          <td></td>
 
635
          <td class="paramtype">uint32_t *&nbsp;</td>
 
636
          <td class="paramname"> <em>bytes</em></td><td>&nbsp;</td>
 
637
        </tr>
 
638
        <tr>
 
639
          <td></td>
 
640
          <td>)</td>
 
641
          <td></td><td></td><td></td>
 
642
        </tr>
 
643
      </table>
 
644
</div>
 
645
<div class="memdoc">
 
646
 
 
647
<p>
 
648
Writes a given number of bytes to a file. 
 
649
<p>
 
650
<dl compact><dt><b>Parameters:</b></dt><dd>
 
651
  <table border="0" cellspacing="2" cellpadding="0">
 
652
    <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>
 
653
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>File handle of previously opened file. </td></tr>
 
654
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>The data to write to the file. </td></tr>
 
655
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>How much data to write.</td></tr>
 
656
  </table>
 
657
</dl>
 
658
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The number of bytes written to the file, or a value less than 0 if none were written... </dd></dl>
 
659
 
 
660
</div>
 
661
</div><p>
 
662
<a class="anchor" name="b4b5ee19121c0283364d3cee5b72cc15"></a><!-- doxytag: member="afc.h::afc_get_device_info" ref="b4b5ee19121c0283364d3cee5b72cc15" args="(afc_client_t client, char ***infos)" -->
 
663
<div class="memitem">
 
664
<div class="memproto">
 
665
      <table class="memname">
 
666
        <tr>
 
667
          <td class="memname">afc_error_t afc_get_device_info           </td>
 
668
          <td>(</td>
 
669
          <td class="paramtype">afc_client_t&nbsp;</td>
 
670
          <td class="paramname"> <em>client</em>, </td>
 
671
        </tr>
 
672
        <tr>
 
673
          <td class="paramkey"></td>
 
674
          <td></td>
 
675
          <td class="paramtype">char ***&nbsp;</td>
 
676
          <td class="paramname"> <em>infos</em></td><td>&nbsp;</td>
 
677
        </tr>
 
678
        <tr>
 
679
          <td></td>
 
680
          <td>)</td>
 
681
          <td></td><td></td><td></td>
 
682
        </tr>
 
683
      </table>
 
684
</div>
 
685
<div class="memdoc">
 
686
 
 
687
<p>
 
688
Get device info for a client connection to phone. 
 
689
<p>
 
690
(free space on disk, etc.)<p>
 
691
<dl compact><dt><b>Parameters:</b></dt><dd>
 
692
  <table border="0" cellspacing="2" cellpadding="0">
 
693
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to get device info for.</td></tr>
 
694
  </table>
 
695
</dl>
 
696
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A char ** list of parameters as given by AFC or NULL if there was an error. </dd></dl>
 
697
 
 
698
</div>
 
699
</div><p>
 
700
<a class="anchor" name="e8224617f5f6f8d17f77932c0e8e07a4"></a><!-- doxytag: member="afc.h::afc_get_device_info_field" ref="e8224617f5f6f8d17f77932c0e8e07a4" args="(afc_client_t client, const char *field)" -->
 
701
<div class="memitem">
 
702
<div class="memproto">
 
703
      <table class="memname">
 
704
        <tr>
 
705
          <td class="memname">char* afc_get_device_info_field           </td>
 
706
          <td>(</td>
 
707
          <td class="paramtype">afc_client_t&nbsp;</td>
 
708
          <td class="paramname"> <em>client</em>, </td>
 
709
        </tr>
 
710
        <tr>
 
711
          <td class="paramkey"></td>
 
712
          <td></td>
 
713
          <td class="paramtype">const char *&nbsp;</td>
 
714
          <td class="paramname"> <em>field</em></td><td>&nbsp;</td>
 
715
        </tr>
 
716
        <tr>
 
717
          <td></td>
 
718
          <td>)</td>
 
719
          <td></td><td></td><td></td>
 
720
        </tr>
 
721
      </table>
 
722
</div>
 
723
<div class="memdoc">
 
724
 
 
725
<p>
 
726
Get a specific field of the device info for a client connection to phone. 
 
727
<p>
 
728
Known values are: Model, FSTotalBytes, FSFreeBytes and FSBlockSize. This is a helper function for <a class="el" href="include_2libiphone_2_a_f_c_8h.html#b4b5ee19121c0283364d3cee5b72cc15" title="Get device info for a client connection to phone.">afc_get_device_info()</a>.<p>
 
729
<dl compact><dt><b>Parameters:</b></dt><dd>
 
730
  <table border="0" cellspacing="2" cellpadding="0">
 
731
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to get device info for. </td></tr>
 
732
    <tr><td valign="top"></td><td valign="top"><em>field</em>&nbsp;</td><td>The field to get the information for</td></tr>
 
733
  </table>
 
734
</dl>
 
735
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A char * or NULL if there was an error. </dd></dl>
 
736
 
 
737
</div>
 
738
</div><p>
 
739
<a class="anchor" name="0b7a62789a2208576ebc1c7794f30f13"></a><!-- doxytag: member="afc.h::afc_get_file_info" ref="0b7a62789a2208576ebc1c7794f30f13" args="(afc_client_t client, const char *filename, char ***infolist)" -->
 
740
<div class="memitem">
 
741
<div class="memproto">
 
742
      <table class="memname">
 
743
        <tr>
 
744
          <td class="memname">afc_error_t afc_get_file_info           </td>
 
745
          <td>(</td>
 
746
          <td class="paramtype">afc_client_t&nbsp;</td>
 
747
          <td class="paramname"> <em>client</em>, </td>
 
748
        </tr>
 
749
        <tr>
 
750
          <td class="paramkey"></td>
 
751
          <td></td>
 
752
          <td class="paramtype">const char *&nbsp;</td>
 
753
          <td class="paramname"> <em>path</em>, </td>
 
754
        </tr>
 
755
        <tr>
 
756
          <td class="paramkey"></td>
 
757
          <td></td>
 
758
          <td class="paramtype">char ***&nbsp;</td>
 
759
          <td class="paramname"> <em>infolist</em></td><td>&nbsp;</td>
 
760
        </tr>
 
761
        <tr>
 
762
          <td></td>
 
763
          <td>)</td>
 
764
          <td></td><td></td><td></td>
 
765
        </tr>
 
766
      </table>
 
767
</div>
 
768
<div class="memdoc">
 
769
 
 
770
<p>
 
771
Gets information about a specific file. 
 
772
<p>
 
773
<dl compact><dt><b>Parameters:</b></dt><dd>
 
774
  <table border="0" cellspacing="2" cellpadding="0">
 
775
    <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>
 
776
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>The fully-qualified path to the file. </td></tr>
 
777
    <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>
 
778
  </table>
 
779
</dl>
 
780
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS on success or an AFC_E_* error value when something went wrong. </dd></dl>
 
781
 
 
782
</div>
 
783
</div><p>
 
784
<a class="anchor" name="57135ac755a1312271d7218432238008"></a><!-- doxytag: member="afc.h::afc_make_directory" ref="57135ac755a1312271d7218432238008" args="(afc_client_t client, const char *dir)" -->
 
785
<div class="memitem">
 
786
<div class="memproto">
 
787
      <table class="memname">
 
788
        <tr>
 
789
          <td class="memname">afc_error_t afc_make_directory           </td>
 
790
          <td>(</td>
 
791
          <td class="paramtype">afc_client_t&nbsp;</td>
 
792
          <td class="paramname"> <em>client</em>, </td>
 
793
        </tr>
 
794
        <tr>
 
795
          <td class="paramkey"></td>
 
796
          <td></td>
 
797
          <td class="paramtype">const char *&nbsp;</td>
 
798
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
 
799
        </tr>
 
800
        <tr>
 
801
          <td></td>
 
802
          <td>)</td>
 
803
          <td></td><td></td><td></td>
 
804
        </tr>
 
805
      </table>
 
806
</div>
 
807
<div class="memdoc">
 
808
 
 
809
<p>
 
810
Creates a directory on the phone. 
 
811
<p>
 
812
<dl compact><dt><b>Parameters:</b></dt><dd>
 
813
  <table border="0" cellspacing="2" cellpadding="0">
 
814
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use to make a directory. </td></tr>
 
815
    <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>
 
816
  </table>
 
817
</dl>
 
818
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS if everythong went well, AFC_E_INVALID_ARGUMENT if arguments are NULL or invalid, AFC_E_NOT_ENOUGH_DATA otherwise. </dd></dl>
 
819
 
 
820
</div>
 
821
</div><p>
 
822
<a class="anchor" name="b5ade933b44d1f913df91d1065faa33a"></a><!-- doxytag: member="afc.h::afc_make_link" ref="b5ade933b44d1f913df91d1065faa33a" args="(afc_client_t client, afc_link_type_t linktype, const char *target, const char *linkname)" -->
 
823
<div class="memitem">
 
824
<div class="memproto">
 
825
      <table class="memname">
 
826
        <tr>
 
827
          <td class="memname">afc_error_t afc_make_link           </td>
 
828
          <td>(</td>
 
829
          <td class="paramtype">afc_client_t&nbsp;</td>
 
830
          <td class="paramname"> <em>client</em>, </td>
 
831
        </tr>
 
832
        <tr>
 
833
          <td class="paramkey"></td>
 
834
          <td></td>
 
835
          <td class="paramtype">afc_link_type_t&nbsp;</td>
 
836
          <td class="paramname"> <em>linktype</em>, </td>
 
837
        </tr>
 
838
        <tr>
 
839
          <td class="paramkey"></td>
 
840
          <td></td>
 
841
          <td class="paramtype">const char *&nbsp;</td>
 
842
          <td class="paramname"> <em>target</em>, </td>
 
843
        </tr>
 
844
        <tr>
 
845
          <td class="paramkey"></td>
 
846
          <td></td>
 
847
          <td class="paramtype">const char *&nbsp;</td>
 
848
          <td class="paramname"> <em>linkname</em></td><td>&nbsp;</td>
 
849
        </tr>
 
850
        <tr>
 
851
          <td></td>
 
852
          <td>)</td>
 
853
          <td></td><td></td><td></td>
 
854
        </tr>
 
855
      </table>
 
856
</div>
 
857
<div class="memdoc">
 
858
 
 
859
<p>
 
860
Creates a hard link or symbolic link on the device. 
 
861
<p>
 
862
<dl compact><dt><b>Parameters:</b></dt><dd>
 
863
  <table border="0" cellspacing="2" cellpadding="0">
 
864
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use for making a link </td></tr>
 
865
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>1 = hard link, 2 = symlink </td></tr>
 
866
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>The file to be linked. </td></tr>
 
867
    <tr><td valign="top"></td><td valign="top"><em>linkname</em>&nbsp;</td><td>The name of link.</td></tr>
 
868
  </table>
 
869
</dl>
 
870
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS if everything went well, AFC_E_INVALID_ARGUMENT if arguments are NULL or invalid, AFC_E_NOT_ENOUGH_DATA otherwise. </dd></dl>
 
871
 
 
872
</div>
 
873
</div><p>
 
874
<a class="anchor" name="a5dcaf88c17b087b5140fe9a9ada21b0"></a><!-- doxytag: member="afc.h::afc_read_directory" ref="a5dcaf88c17b087b5140fe9a9ada21b0" args="(afc_client_t client, const char *dir, char ***list)" -->
 
875
<div class="memitem">
 
876
<div class="memproto">
 
877
      <table class="memname">
 
878
        <tr>
 
879
          <td class="memname">afc_error_t afc_read_directory           </td>
 
880
          <td>(</td>
 
881
          <td class="paramtype">afc_client_t&nbsp;</td>
 
882
          <td class="paramname"> <em>client</em>, </td>
 
883
        </tr>
 
884
        <tr>
 
885
          <td class="paramkey"></td>
 
886
          <td></td>
 
887
          <td class="paramtype">const char *&nbsp;</td>
 
888
          <td class="paramname"> <em>dir</em>, </td>
 
889
        </tr>
 
890
        <tr>
 
891
          <td class="paramkey"></td>
 
892
          <td></td>
 
893
          <td class="paramtype">char ***&nbsp;</td>
 
894
          <td class="paramname"> <em>list</em></td><td>&nbsp;</td>
 
895
        </tr>
 
896
        <tr>
 
897
          <td></td>
 
898
          <td>)</td>
 
899
          <td></td><td></td><td></td>
 
900
        </tr>
 
901
      </table>
 
902
</div>
 
903
<div class="memdoc">
 
904
 
 
905
<p>
 
906
Gets a directory listing of the directory requested. 
 
907
<p>
 
908
<dl compact><dt><b>Parameters:</b></dt><dd>
 
909
  <table border="0" cellspacing="2" cellpadding="0">
 
910
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to get a directory listing from. </td></tr>
 
911
    <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>
 
912
  </table>
 
913
</dl>
 
914
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A char ** list of files in that directory, terminated by an empty string for now or NULL if there was an error. </dd></dl>
 
915
 
 
916
</div>
 
917
</div><p>
 
918
<a class="anchor" name="efd69b3b2168543c06833f9507858b63"></a><!-- doxytag: member="afc.h::afc_remove_path" ref="efd69b3b2168543c06833f9507858b63" args="(afc_client_t client, const char *path)" -->
 
919
<div class="memitem">
 
920
<div class="memproto">
 
921
      <table class="memname">
 
922
        <tr>
 
923
          <td class="memname">afc_error_t afc_remove_path           </td>
 
924
          <td>(</td>
 
925
          <td class="paramtype">afc_client_t&nbsp;</td>
 
926
          <td class="paramname"> <em>client</em>, </td>
 
927
        </tr>
 
928
        <tr>
 
929
          <td class="paramkey"></td>
 
930
          <td></td>
 
931
          <td class="paramtype">const char *&nbsp;</td>
 
932
          <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
 
933
        </tr>
 
934
        <tr>
 
935
          <td></td>
 
936
          <td>)</td>
 
937
          <td></td><td></td><td></td>
 
938
        </tr>
 
939
      </table>
 
940
</div>
 
941
<div class="memdoc">
 
942
 
 
943
<p>
 
944
Deletes a file or directory. 
 
945
<p>
 
946
<dl compact><dt><b>Parameters:</b></dt><dd>
 
947
  <table border="0" cellspacing="2" cellpadding="0">
 
948
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to use. </td></tr>
 
949
    <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>
 
950
  </table>
 
951
</dl>
 
952
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS if everythong went well, AFC_E_INVALID_ARGUMENT if arguments are NULL or invalid, AFC_E_NOT_ENOUGH_DATA otherwise. </dd></dl>
 
953
 
 
954
</div>
 
955
</div><p>
 
956
<a class="anchor" name="0c783fb34679a9be39e96aeac2f38801"></a><!-- doxytag: member="afc.h::afc_rename_path" ref="0c783fb34679a9be39e96aeac2f38801" args="(afc_client_t client, const char *from, const char *to)" -->
 
957
<div class="memitem">
 
958
<div class="memproto">
 
959
      <table class="memname">
 
960
        <tr>
 
961
          <td class="memname">afc_error_t afc_rename_path           </td>
 
962
          <td>(</td>
 
963
          <td class="paramtype">afc_client_t&nbsp;</td>
 
964
          <td class="paramname"> <em>client</em>, </td>
 
965
        </tr>
 
966
        <tr>
 
967
          <td class="paramkey"></td>
 
968
          <td></td>
 
969
          <td class="paramtype">const char *&nbsp;</td>
 
970
          <td class="paramname"> <em>from</em>, </td>
 
971
        </tr>
 
972
        <tr>
 
973
          <td class="paramkey"></td>
 
974
          <td></td>
 
975
          <td class="paramtype">const char *&nbsp;</td>
 
976
          <td class="paramname"> <em>to</em></td><td>&nbsp;</td>
 
977
        </tr>
 
978
        <tr>
 
979
          <td></td>
 
980
          <td>)</td>
 
981
          <td></td><td></td><td></td>
 
982
        </tr>
 
983
      </table>
 
984
</div>
 
985
<div class="memdoc">
 
986
 
 
987
<p>
 
988
Renames a file or directory on the phone. 
 
989
<p>
 
990
<dl compact><dt><b>Parameters:</b></dt><dd>
 
991
  <table border="0" cellspacing="2" cellpadding="0">
 
992
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>The client to have rename. </td></tr>
 
993
    <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>
 
994
    <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>
 
995
  </table>
 
996
</dl>
 
997
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS if everythong went well, AFC_E_INVALID_ARGUMENT if arguments are NULL or invalid, AFC_E_NOT_ENOUGH_DATA otherwise. </dd></dl>
 
998
 
 
999
</div>
 
1000
</div><p>
 
1001
<a class="anchor" name="86f3020f7a685bbf7f078fea12df555f"></a><!-- doxytag: member="afc.h::afc_truncate" ref="86f3020f7a685bbf7f078fea12df555f" args="(afc_client_t client, const char *path, off_t newsize)" -->
 
1002
<div class="memitem">
 
1003
<div class="memproto">
 
1004
      <table class="memname">
 
1005
        <tr>
 
1006
          <td class="memname">afc_error_t afc_truncate           </td>
 
1007
          <td>(</td>
 
1008
          <td class="paramtype">afc_client_t&nbsp;</td>
 
1009
          <td class="paramname"> <em>client</em>, </td>
 
1010
        </tr>
 
1011
        <tr>
 
1012
          <td class="paramkey"></td>
 
1013
          <td></td>
 
1014
          <td class="paramtype">const char *&nbsp;</td>
 
1015
          <td class="paramname"> <em>path</em>, </td>
 
1016
        </tr>
 
1017
        <tr>
 
1018
          <td class="paramkey"></td>
 
1019
          <td></td>
 
1020
          <td class="paramtype">off_t&nbsp;</td>
 
1021
          <td class="paramname"> <em>newsize</em></td><td>&nbsp;</td>
 
1022
        </tr>
 
1023
        <tr>
 
1024
          <td></td>
 
1025
          <td>)</td>
 
1026
          <td></td><td></td><td></td>
 
1027
        </tr>
 
1028
      </table>
 
1029
</div>
 
1030
<div class="memdoc">
 
1031
 
 
1032
<p>
 
1033
Sets the size of a file on the phone without prior opening it. 
 
1034
<p>
 
1035
<dl compact><dt><b>Parameters:</b></dt><dd>
 
1036
  <table border="0" cellspacing="2" cellpadding="0">
 
1037
    <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>
 
1038
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>The path of the file to be truncated. </td></tr>
 
1039
    <tr><td valign="top"></td><td valign="top"><em>newsize</em>&nbsp;</td><td>The size to set the file to.</td></tr>
 
1040
  </table>
 
1041
</dl>
 
1042
<dl class="return" compact><dt><b>Returns:</b></dt><dd>AFC_E_SUCCESS if everything went well, AFC_E_INVALID_ARGUMENT if arguments are NULL or invalid, AFC_E_NOT_ENOUGH_DATA otherwise. </dd></dl>
 
1043
 
 
1044
</div>
 
1045
</div><p>
 
1046
</div>
 
1047
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Aug 3 09:05:17 2009 for libiphone by&nbsp;
 
1048
<a href="http://www.doxygen.org/index.html">
 
1049
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
 
1050
</body>
 
1051
</html>