Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/libc/generic/loader.c

    r622cdbe r99272a3  
    9090        ipc_call_t answer;
    9191        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));
    12893        if (rc != EOK) {
    12994                async_wait_for(req, NULL);
     
    158123        ipc_call_t answer;
    159124        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);
    161126        if (rc != EOK) {
    162127                async_wait_for(req, NULL);
     
    213178        ipc_call_t answer;
    214179        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);
    216181        if (rc != EOK) {
    217182                async_wait_for(req, NULL);
     
    267232        ipc_call_t answer;
    268233        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,
    270235            count * sizeof(fdi_node_t));
    271236        if (rc != EOK) {
Note: See TracChangeset for help on using the changeset viewer.