Subversion Repositories HelenOS

Rev

Rev 4301 | Rev 4305 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4301 Rev 4302
Line 318... Line 318...
318
        free(mp);
318
        free(mp);
319
        free(fs_name);
319
        free(fs_name);
320
        return;
320
        return;
321
    }
321
    }
322
    fs_name[size] = '\0';
322
    fs_name[size] = '\0';
-
 
323
 
-
 
324
    /*
-
 
325
     * Wait for IPC_M_PING so that we can return an error if we don't know
-
 
326
     * fs_name.
-
 
327
     */
-
 
328
    ipc_call_t data;
-
 
329
    callid = async_get_call(&data);
-
 
330
    if (IPC_GET_METHOD(data) != IPC_M_PING) {
-
 
331
        ipc_answer_0(callid, ENOTSUP);
-
 
332
        ipc_answer_0(rid, ENOTSUP);
-
 
333
        free(mp);
-
 
334
        free(fs_name);
-
 
335
        return;
323
   
336
    }
-
 
337
 
324
    /*
338
    /*
325
     * Check if we know a file system with the same name as is in fs_name.
339
     * Check if we know a file system with the same name as is in fs_name.
326
     * This will also give us its file system handle.
340
     * This will also give us its file system handle.
327
     */
341
     */
328
    fs_handle_t fs_handle = fs_name_to_handle(fs_name, true);
342
    fs_handle_t fs_handle = fs_name_to_handle(fs_name, true);
329
    if (!fs_handle) {
343
    if (!fs_handle) {
330
        if (flags & IPC_FLAG_BLOCKING) {
344
        if (flags & IPC_FLAG_BLOCKING) {
-
 
345
            pending_req_t *pr;
-
 
346
 
331
            /* Blocking mount, add to pending list */
347
            /* Blocking mount, add to pending list */
332
            pending_req_t *pr = (pending_req_t *) malloc(sizeof(pending_req_t));
348
            pr = (pending_req_t *) malloc(sizeof(pending_req_t));
333
            if (!pr) {
349
            if (!pr) {
334
                ipc_answer_0(callid, ENOMEM);
350
                ipc_answer_0(callid, ENOMEM);
335
                ipc_answer_0(rid, ENOMEM);
351
                ipc_answer_0(rid, ENOMEM);
336
                free(mp);
352
                free(mp);
337
                free(fs_name);
353
                free(fs_name);