Changes in uspace/lib/libc/generic/loader.c [622cdbe:99272a3] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/libc/generic/loader.c
r622cdbe r99272a3 90 90 ipc_call_t answer; 91 91 aid_t req = async_send_0(ldr->phone_id, LOADER_GET_TASKID, &answer); 92 int rc = async_data_read_start(ldr->phone_id, task_id, sizeof(task_id_t)); 93 if (rc != EOK) { 94 async_wait_for(req, NULL); 95 return rc; 96 } 97 98 ipcarg_t retval; 99 async_wait_for(req, &retval); 100 return (int) retval; 101 } 102 103 /** Set current working directory for the loaded task. 104 * 105 * Sets the current working directory for the loaded task. 106 * 107 * @param ldr Loader connection structure. 108 * 109 * @return Zero on success or negative error code. 110 * 111 */ 112 int loader_set_cwd(loader_t *ldr) 113 { 114 char *cwd; 115 size_t len; 116 117 cwd = (char *) malloc(MAX_PATH_LEN + 1); 118 if (!cwd) 119 return ENOMEM; 120 if (!getcwd(cwd, MAX_PATH_LEN + 1)) 121 str_cpy(cwd, MAX_PATH_LEN + 1, "/"); 122 len = str_length(cwd); 123 124 ipc_call_t answer; 125 aid_t req = async_send_0(ldr->phone_id, LOADER_SET_CWD, &answer); 126 int rc = async_data_write_start(ldr->phone_id, cwd, len); 127 free(cwd); 92 int rc = ipc_data_read_start(ldr->phone_id, task_id, sizeof(task_id_t)); 128 93 if (rc != EOK) { 129 94 async_wait_for(req, NULL); … … 158 123 ipc_call_t answer; 159 124 aid_t req = async_send_0(ldr->phone_id, LOADER_SET_PATHNAME, &answer); 160 int rc = async_data_write_start(ldr->phone_id, (void *) pa, pa_len);125 int rc = ipc_data_write_start(ldr->phone_id, (void *) pa, pa_len); 161 126 if (rc != EOK) { 162 127 async_wait_for(req, NULL); … … 213 178 ipc_call_t answer; 214 179 aid_t req = async_send_0(ldr->phone_id, LOADER_SET_ARGS, &answer); 215 ipcarg_t rc = async_data_write_start(ldr->phone_id, (void *) arg_buf, buffer_size);180 ipcarg_t rc = ipc_data_write_start(ldr->phone_id, (void *) arg_buf, buffer_size); 216 181 if (rc != EOK) { 217 182 async_wait_for(req, NULL); … … 267 232 ipc_call_t answer; 268 233 aid_t req = async_send_0(ldr->phone_id, LOADER_SET_FILES, &answer); 269 ipcarg_t rc = async_data_write_start(ldr->phone_id, (void *) files_buf,234 ipcarg_t rc = ipc_data_write_start(ldr->phone_id, (void *) files_buf, 270 235 count * sizeof(fdi_node_t)); 271 236 if (rc != EOK) {
Note:
See TracChangeset
for help on using the changeset viewer.