Changeset 6364d3c in mainline
- Timestamp:
- 2007-12-04T20:29:55Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 9119d25
- Parents:
- 38c706cc
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/ipc/ipc.h
r38c706cc r6364d3c 119 119 * The protocol for negotiating is: 120 120 * - sys_connect_to_me - sends a message IPC_M_CONNECT_TO_ME 121 * - sys_wait_for_call- upon receipt tries to allocate new phone121 * - recipient - upon receipt tries to allocate new phone 122 122 * - if it fails, responds with ELIMIT 123 123 * - passes call to userspace. If userspace … … 127 127 * - the allocated phoneid is passed to userspace 128 128 * (on the receiving side) as ARG5 of the call. 129 * - the caller obtains taskid of the called thread130 129 */ 131 130 #define IPC_M_CONNECT_TO_ME 1 … … 142 141 * address of the phone that should be connected 143 142 * (TODO: it leaks to userspace) 144 * recipient- if ipc_answer == 0, then accept connection143 * - recipient - if ipc_answer == 0, then accept connection 145 144 * - otherwise connection refused 146 * - recepient may forward message. Forwarding 147 * system message 145 * - recepient may forward message. 148 146 * 149 147 */ -
kernel/generic/src/ipc/sysipc.c
r38c706cc r6364d3c 185 185 /* The connection was accepted */ 186 186 phone_connect(phoneid, &answer->sender->answerbox); 187 /* Set 'phone hash' as arg 3of response */187 /* Set 'phone hash' as arg5 of response */ 188 188 IPC_SET_ARG5(answer->data, 189 189 (unative_t) &TASK->phones[phoneid]); … … 270 270 if (newphid < 0) 271 271 return ELIMIT; 272 /* Set arg 3for server */272 /* Set arg5 for server */ 273 273 IPC_SET_ARG5(call->data, (unative_t) &TASK->phones[newphid]); 274 274 call->flags |= IPC_CALL_CONN_ME_TO; -
uspace/srv/fs/fat/fat.h
r38c706cc r6364d3c 136 136 extern uint8_t *plb_ro; 137 137 138 extern void fat_lookup(ipc_callid_t, ipc_call_t *); 139 140 /* 141 * The following interfaces are rather fs-neutral and might be later moved to a 142 * dedicated library (e.g. libfs). We just wait until the interfaces stabilize 143 * and until there is more than one fs implementation. 144 */ 138 145 extern int block_read(int, unsigned long, void *); 146 extern int block_write(int, unsigned long, void *); 139 147 140 extern void fat_lookup(ipc_callid_t, ipc_call_t *); 148 extern void node_add_mp(int, unsigned long); 149 extern void node_del_mp(int, unsigned long); 150 extern bool node_is_mp(int, unsigned long); 141 151 142 152 #endif -
uspace/srv/fs/fat/fat_ops.c
r38c706cc r6364d3c 37 37 38 38 #include "fat.h" 39 #include "../../vfs/vfs.h" 39 40 #include <ipc/ipc.h> 40 41 #include <async.h> 41 42 #include <errno.h> 43 44 #define PLB_GET_CHAR(i) (plb_ro[(i) % PLB_SIZE]) 45 46 #define FAT_NAME_LEN 8 47 #define FAT_EXT_LEN 3 48 49 #define FAT_PAD ' ' 50 51 #define FAT_DENTRY_UNUSED 0x00 52 #define FAT_DENTRY_E5_ESC 0x05 53 #define FAT_DENTRY_DOT 0x2e 54 #define FAT_DENTRY_ERASED 0xe5 55 56 static int match_path_component(fat_dentry_t *dentry, unsigned index, 57 size_t len) 58 { 59 } 42 60 43 61 void fat_lookup(ipc_callid_t rid, ipc_call_t *request)
Note:
See TracChangeset
for help on using the changeset viewer.