295 |
325 |
296 @return pointer to instantiated CLocalProxyDrive object. |
326 @return pointer to instantiated CLocalProxyDrive object. |
297 */ |
327 */ |
298 CLocalProxyDrive* CLocalProxyDrive::New(CMountCB* aMount,TBusLocalDrive& aLocDrv) |
328 CLocalProxyDrive* CLocalProxyDrive::New(CMountCB* aMount,TBusLocalDrive& aLocDrv) |
299 { |
329 { |
300 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveNew, EF32TraceUidProxyDrive, |
330 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVENEW, "aMount %x drive %d", (TUint) aMount, (TUint) aMount->DriveNumber()); |
301 aMount, aMount->DriveNumber()); |
|
302 |
|
303 CLocalProxyDrive* proxyDrive = new CLocalProxyDrive(aMount,aLocDrv); |
331 CLocalProxyDrive* proxyDrive = new CLocalProxyDrive(aMount,aLocDrv); |
304 |
332 |
305 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveNewRet, EF32TraceUidProxyDrive, proxyDrive); |
333 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVENEWRET, "proxyDrive %x", proxyDrive); |
306 return proxyDrive; |
334 return proxyDrive; |
307 } |
335 } |
308 |
336 |
309 /** |
337 /** |
310 Constructor. |
338 Constructor. |
358 |
384 |
359 @return system wide error code. |
385 @return system wide error code. |
360 */ |
386 */ |
361 TInt CLocalProxyDrive::Enlarge(TInt aLength) |
387 TInt CLocalProxyDrive::Enlarge(TInt aLength) |
362 { |
388 { |
363 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveEnlarge, EF32TraceUidProxyDrive, this, aLength); |
389 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEENLARGE, "this %x aLength %d", (TUint) this, (TUint) aLength); |
364 |
|
365 TInt r = iLocDrv.Enlarge(aLength); |
390 TInt r = iLocDrv.Enlarge(aLength); |
366 |
391 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEENLARGERET, "r %d", r); |
367 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveEnlargeRet, EF32TraceUidProxyDrive, r); |
|
368 return r; |
392 return r; |
369 } |
393 } |
370 |
394 |
371 |
395 |
372 /** |
396 /** |
380 |
404 |
381 @return system wide error code. |
405 @return system wide error code. |
382 */ |
406 */ |
383 TInt CLocalProxyDrive::ReduceSize(TInt aPos, TInt aLength) |
407 TInt CLocalProxyDrive::ReduceSize(TInt aPos, TInt aLength) |
384 { |
408 { |
385 TRACE3(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveReduceSize, EF32TraceUidProxyDrive, this, aPos, aLength); |
409 OstTraceExt3(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREDUCESIZE, "this %x aPos %x aLength %d", (TUint) this, (TUint) aPos, (TUint) aLength); |
386 |
|
387 TInt r = iLocDrv.ReduceSize(aPos,aLength); |
410 TInt r = iLocDrv.ReduceSize(aPos,aLength); |
388 |
411 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREDUCESIZERET, "r %d", r); |
389 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveReduceSizeRet, EF32TraceUidProxyDrive, r); |
|
390 return r; |
412 return r; |
391 } |
413 } |
392 |
414 |
393 |
415 |
394 /** |
416 /** |
404 @return system wide error code. |
426 @return system wide error code. |
405 */ |
427 */ |
406 TInt CLocalProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt aOffset, TInt aFlags) |
428 TInt CLocalProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt aOffset, TInt aFlags) |
407 { |
429 { |
408 TRACETHREADIDH(aThreadHandle); |
430 TRACETHREADIDH(aThreadHandle); |
409 TRACE8(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveRead1, EF32TraceUidProxyDrive, |
431 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREAD1, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
410 this, I64LOW(aPos), I64HIGH(aPos), aLength, aTrg, threadId, aOffset, aFlags); |
|
411 |
|
412 TInt r = iLocDrv.Read(aPos,aLength,aTrg,aThreadHandle,aOffset,aFlags); |
432 TInt r = iLocDrv.Read(aPos,aLength,aTrg,aThreadHandle,aOffset,aFlags); |
413 |
433 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREAD1RET, "r %d", r); |
414 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveRead1Ret, EF32TraceUidProxyDrive, r); |
|
415 return r; |
434 return r; |
416 } |
435 } |
417 |
436 |
418 /** |
437 /** |
419 Read from the connected drive. |
438 Read from the connected drive. |
427 @return system wide error code. |
446 @return system wide error code. |
428 */ |
447 */ |
429 TInt CLocalProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt anOffset) |
448 TInt CLocalProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt anOffset) |
430 { |
449 { |
431 TRACETHREADIDH(aThreadHandle); |
450 TRACETHREADIDH(aThreadHandle); |
432 TRACE7(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveRead2, EF32TraceUidProxyDrive, |
451 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREAD2, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
433 this, I64LOW(aPos), I64HIGH(aPos), aLength, aTrg, threadId, anOffset); |
|
434 |
|
435 TInt r = iLocDrv.Read(aPos,aLength,aTrg,aThreadHandle,anOffset); |
452 TInt r = iLocDrv.Read(aPos,aLength,aTrg,aThreadHandle,anOffset); |
436 |
453 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREAD2RET, "r %d", r); |
437 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveRead2Ret, EF32TraceUidProxyDrive, r); |
|
438 return r; |
454 return r; |
439 } |
455 } |
440 |
456 |
441 /** |
457 /** |
442 Read from the connected drive. |
458 Read from the connected drive. |
447 |
463 |
448 @return system wide error code. |
464 @return system wide error code. |
449 */ |
465 */ |
450 TInt CLocalProxyDrive::Read(TInt64 aPos,TInt aLength,TDes8& aTrg) |
466 TInt CLocalProxyDrive::Read(TInt64 aPos,TInt aLength,TDes8& aTrg) |
451 { |
467 { |
452 TRACE5(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveRead3, EF32TraceUidProxyDrive, |
468 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREAD3, "this %x aPos %x:%x aLength %d aTrg %x", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength, (TUint) &aTrg); |
453 this, I64LOW(aPos), I64HIGH(aPos), aLength, &aTrg); |
|
454 |
|
455 TInt r = iLocDrv.Read(aPos,aLength,aTrg); |
469 TInt r = iLocDrv.Read(aPos,aLength,aTrg); |
456 |
470 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEREAD3RET, "r %d", r); |
457 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveRead3Ret, EF32TraceUidProxyDrive, r); |
|
458 return r; |
471 return r; |
459 } |
472 } |
460 |
473 |
461 |
474 |
462 /** |
475 /** |
472 @return system wide error code. |
485 @return system wide error code. |
473 */ |
486 */ |
474 TInt CLocalProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt aOffset,TInt aFlags) |
487 TInt CLocalProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt aOffset,TInt aFlags) |
475 { |
488 { |
476 TRACETHREADIDH(aThreadHandle); |
489 TRACETHREADIDH(aThreadHandle); |
477 TRACE8(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveWrite1, EF32TraceUidProxyDrive, |
490 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEWRITE1, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
478 this, I64LOW(aPos), I64HIGH(aPos), aLength, aSrc, threadId, aOffset, aFlags); |
|
479 |
|
480 TInt r = iLocDrv.Write(aPos,aLength,aSrc,aThreadHandle,aOffset,aFlags); |
491 TInt r = iLocDrv.Write(aPos,aLength,aSrc,aThreadHandle,aOffset,aFlags); |
481 |
492 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEWRITE1RET, "r %d", r); |
482 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveWrite1Ret, EF32TraceUidProxyDrive, r); |
|
483 |
|
484 return r; |
493 return r; |
485 } |
494 } |
486 |
495 |
487 |
496 |
488 /** |
497 /** |
497 @return system wide error code. |
506 @return system wide error code. |
498 */ |
507 */ |
499 TInt CLocalProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt anOffset) |
508 TInt CLocalProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt anOffset) |
500 { |
509 { |
501 TRACETHREADIDH(aThreadHandle); |
510 TRACETHREADIDH(aThreadHandle); |
502 TRACE7(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveWrite2, EF32TraceUidProxyDrive, |
511 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEWRITE2, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
503 this, I64LOW(aPos), I64HIGH(aPos), aLength, aSrc, threadId, anOffset); |
|
504 |
|
505 TInt r = iLocDrv.Write(aPos,aLength,aSrc,aThreadHandle,anOffset); |
512 TInt r = iLocDrv.Write(aPos,aLength,aSrc,aThreadHandle,anOffset); |
506 |
513 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEWRITE2RET, "r %d", r); |
507 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveWrite2Ret, EF32TraceUidProxyDrive, r); |
|
508 return r; |
514 return r; |
509 } |
515 } |
510 |
516 |
511 |
517 |
512 /** |
518 /** |
517 |
523 |
518 @return system wide error code. |
524 @return system wide error code. |
519 */ |
525 */ |
520 TInt CLocalProxyDrive::Write(TInt64 aPos,const TDesC8& aSrc) |
526 TInt CLocalProxyDrive::Write(TInt64 aPos,const TDesC8& aSrc) |
521 { |
527 { |
522 TRACE5(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveWrite3, EF32TraceUidProxyDrive, |
528 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEWRITE3, "this %x aPos %x:%x aLength %d aSrc %x", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aSrc.Length(), (TUint) &aSrc); |
523 this, I64LOW(aPos), I64HIGH(aPos), aSrc.Length(), &aSrc); |
|
524 |
|
525 TInt r = iLocDrv.Write(aPos,aSrc); |
529 TInt r = iLocDrv.Write(aPos,aSrc); |
526 |
530 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEWRITE3RET, "r %d", r); |
527 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveWrite3Ret, EF32TraceUidProxyDrive, r); |
|
528 return r; |
531 return r; |
529 } |
532 } |
530 |
533 |
531 |
534 |
532 /** |
535 /** |
536 |
539 |
537 @return system wide error code |
540 @return system wide error code |
538 */ |
541 */ |
539 TInt CLocalProxyDrive::Caps(TDes8& anInfo) |
542 TInt CLocalProxyDrive::Caps(TDes8& anInfo) |
540 { |
543 { |
541 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveCaps, EF32TraceUidProxyDrive, this); |
544 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVECAPS, "this %x", this); |
542 |
|
543 TInt r = iLocDrv.Caps(anInfo); |
545 TInt r = iLocDrv.Caps(anInfo); |
544 |
546 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVECAPSRET, "r %d", r); |
545 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveCapsRet, EF32TraceUidProxyDrive, r); |
|
546 return r; |
547 return r; |
547 } |
548 } |
548 |
549 |
549 |
550 |
550 /** |
551 /** |
554 |
555 |
555 @return system wide error code. |
556 @return system wide error code. |
556 */ |
557 */ |
557 TInt CLocalProxyDrive::Format(TFormatInfo& anInfo) |
558 TInt CLocalProxyDrive::Format(TFormatInfo& anInfo) |
558 { |
559 { |
559 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveFormat1, EF32TraceUidProxyDrive, this); |
560 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEFORMAT1, "this %x", this); |
560 |
|
561 TInt r = iLocDrv.Format(anInfo); |
561 TInt r = iLocDrv.Format(anInfo); |
562 |
562 OstTraceExt4(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEFORMAT1RET, "r %d iFormatIsCurrent %d i512ByteSectorsFormatted %d iMaxBytesPerFormat %d", (TUint) r, (TUint) anInfo.iFormatIsCurrent, (TUint) anInfo.i512ByteSectorsFormatted, (TUint) anInfo.iMaxBytesPerFormat); |
563 TRACE4(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveFormat1Ret, EF32TraceUidProxyDrive, |
|
564 r, anInfo.iFormatIsCurrent, anInfo.i512ByteSectorsFormatted, anInfo.iMaxBytesPerFormat); |
|
565 return r; |
563 return r; |
566 } |
564 } |
567 |
565 |
568 |
566 |
569 /** |
567 /** |
574 |
572 |
575 @return system wide error code. |
573 @return system wide error code. |
576 */ |
574 */ |
577 TInt CLocalProxyDrive::Format(TInt64 aPos,TInt aLength) |
575 TInt CLocalProxyDrive::Format(TInt64 aPos,TInt aLength) |
578 { |
576 { |
579 TRACE4(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveFormat2, EF32TraceUidProxyDrive, |
577 OstTraceExt4(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEFORMAT2, "this %x aPos %x:%x aLength %d", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), (TUint) aLength); |
580 this, I64LOW(aPos), I64HIGH(aPos), aLength); |
|
581 |
|
582 TInt r = iLocDrv.Format(aPos,aLength); |
578 TInt r = iLocDrv.Format(aPos,aLength); |
583 |
579 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEFORMAT2RET, "r %d", r); |
584 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveFormat2Ret, EF32TraceUidProxyDrive, r); |
|
585 return r; |
580 return r; |
586 } |
581 } |
587 |
582 |
588 |
583 |
589 /** |
584 /** |
594 |
589 |
595 @return system wide error code. |
590 @return system wide error code. |
596 */ |
591 */ |
597 TInt CLocalProxyDrive::SetMountInfo(const TDesC8* aMountInfo,TInt aMountInfoThreadHandle) |
592 TInt CLocalProxyDrive::SetMountInfo(const TDesC8* aMountInfo,TInt aMountInfoThreadHandle) |
598 { |
593 { |
599 TRACE3(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveSetMountInfo, EF32TraceUidProxyDrive, this, aMountInfo, aMountInfoThreadHandle); |
594 OstTraceExt3(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVESETMOUNTINFO, "this %x aMountInfo %x aMountInfoThreadHandle %d", (TUint) this, (TUint) aMountInfo, (TUint) aMountInfoThreadHandle); |
600 |
|
601 TInt r = iLocDrv.SetMountInfo(aMountInfo,aMountInfoThreadHandle); |
595 TInt r = iLocDrv.SetMountInfo(aMountInfo,aMountInfoThreadHandle); |
602 |
596 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVESETMOUNTINFORET, "r %d", r); |
603 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveSetMountInfoRet, EF32TraceUidProxyDrive, r); |
|
604 return r; |
597 return r; |
605 } |
598 } |
606 |
599 |
607 |
600 |
608 /** |
601 /** |
612 |
605 |
613 @return system wide error code. |
606 @return system wide error code. |
614 */ |
607 */ |
615 TInt CLocalProxyDrive::ForceRemount(TUint aFlags) |
608 TInt CLocalProxyDrive::ForceRemount(TUint aFlags) |
616 { |
609 { |
617 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveForceRemount, EF32TraceUidProxyDrive, this, aFlags); |
610 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEFORCEREMOUNT, "this %x aFlags %x", (TUint) this, (TUint) aFlags); |
618 |
|
619 TInt r = iLocDrv.ForceRemount(aFlags); |
611 TInt r = iLocDrv.ForceRemount(aFlags); |
620 |
612 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEFORCEREMOUNTRET, "r %d", r); |
621 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveForceRemountRet, EF32TraceUidProxyDrive, r); |
|
622 return r; |
613 return r; |
623 } |
614 } |
624 |
615 |
625 /** |
616 /** |
626 An interface with which control commands can be passed to |
617 An interface with which control commands can be passed to |
633 |
624 |
634 @return system wide error code. |
625 @return system wide error code. |
635 */ |
626 */ |
636 TInt CLocalProxyDrive::ControlIO(const RMessagePtr2& /*aMessage*/,TInt aCommand,TAny* aParam1,TAny* aParam2) |
627 TInt CLocalProxyDrive::ControlIO(const RMessagePtr2& /*aMessage*/,TInt aCommand,TAny* aParam1,TAny* aParam2) |
637 { |
628 { |
638 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveControlIO, EF32TraceUidProxyDrive, this); |
629 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVECONTROLIO, "this %x", this); |
639 |
|
640 TInt r = iLocDrv.ControlIO(aCommand,aParam1,aParam2); |
630 TInt r = iLocDrv.ControlIO(aCommand,aParam1,aParam2); |
641 |
631 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVECONTROLIORET, "r %d", r); |
642 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveControlIORet, EF32TraceUidProxyDrive, r); |
|
643 return r; |
632 return r; |
644 } |
633 } |
645 |
634 |
646 |
635 |
647 /** |
636 /** |
652 |
641 |
653 @return system wide error code. |
642 @return system wide error code. |
654 */ |
643 */ |
655 TInt CLocalProxyDrive::Unlock(TMediaPassword &aPassword, TBool aStorePassword) |
644 TInt CLocalProxyDrive::Unlock(TMediaPassword &aPassword, TBool aStorePassword) |
656 { |
645 { |
657 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveUnlock, EF32TraceUidProxyDrive, this, aStorePassword); |
646 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEUNLOCK, "this %x aPassword %d", (TUint) this, (TUint) aStorePassword); |
658 |
|
659 TInt r = iLocDrv.Unlock(aPassword,aStorePassword); |
647 TInt r = iLocDrv.Unlock(aPassword,aStorePassword); |
660 |
648 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEUNLOCKRET, "r %d", r); |
661 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveUnlockRet, EF32TraceUidProxyDrive, r); |
|
662 return r; |
649 return r; |
663 } |
650 } |
664 |
651 |
665 |
652 |
666 /** |
653 /** |
672 |
659 |
673 @return system wide error code. |
660 @return system wide error code. |
674 */ |
661 */ |
675 TInt CLocalProxyDrive::Lock(TMediaPassword &aOldPassword, TMediaPassword &aNewPassword, TBool aStorePassword) |
662 TInt CLocalProxyDrive::Lock(TMediaPassword &aOldPassword, TMediaPassword &aNewPassword, TBool aStorePassword) |
676 { |
663 { |
677 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveLock, EF32TraceUidProxyDrive, this, aStorePassword); |
664 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVELOCK, "this %x aPassword %d", (TUint) this, (TUint) aStorePassword); |
678 |
|
679 TInt r = iLocDrv.SetPassword(aOldPassword,aNewPassword,aStorePassword); |
665 TInt r = iLocDrv.SetPassword(aOldPassword,aNewPassword,aStorePassword); |
680 |
666 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVELOCKRET, "r %d", r); |
681 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveLockRet, EF32TraceUidProxyDrive, r); |
|
682 return r; |
667 return r; |
683 } |
668 } |
684 |
669 |
685 |
670 |
686 /** |
671 /** |
690 |
675 |
691 @return system wide error code. |
676 @return system wide error code. |
692 */ |
677 */ |
693 TInt CLocalProxyDrive::Clear(TMediaPassword &aPassword) |
678 TInt CLocalProxyDrive::Clear(TMediaPassword &aPassword) |
694 { |
679 { |
695 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveClear, EF32TraceUidProxyDrive, this); |
680 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVECLEAR, "this %x", this); |
696 |
|
697 TInt r = iLocDrv.Clear(aPassword); |
681 TInt r = iLocDrv.Clear(aPassword); |
698 |
682 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVECLEARRET, "r %d", r); |
699 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveClearRet, EF32TraceUidProxyDrive, r); |
|
700 return r; |
683 return r; |
701 } |
684 } |
702 |
685 |
703 /** |
686 /** |
704 Forcibly unlock a password-enabled drive. |
687 Forcibly unlock a password-enabled drive. |
705 |
688 |
706 @return system wide error code. |
689 @return system wide error code. |
707 */ |
690 */ |
708 TInt CLocalProxyDrive::ErasePassword() |
691 TInt CLocalProxyDrive::ErasePassword() |
709 { |
692 { |
710 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveErasePassword, EF32TraceUidProxyDrive, this); |
693 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEERASEPASSWORD, "this %x", this); |
711 |
|
712 TInt r = iLocDrv.ErasePassword(); |
694 TInt r = iLocDrv.ErasePassword(); |
713 |
695 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEERASEPASSWORDRET, "r %d", r); |
714 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveErasePasswordRet, EF32TraceUidProxyDrive, r); |
|
715 return r; |
696 return r; |
716 } |
697 } |
717 |
698 |
718 /** |
699 /** |
719 Notify the media driver that an area of the partition has been deleted. |
700 Notify the media driver that an area of the partition has been deleted. |
720 Used by some media drivers (e.g. NAND flash) for garbage collection. |
701 Used by some media drivers (e.g. NAND flash) for garbage collection. |
721 |
702 |
722 @param aPos The position of the data which is being deleted. |
703 @param aPos The position of the data which is being deleted. |
723 @param aLength The length of the data which is being deleted. |
704 @param aLength The length of the data which is being deleted. |
724 |
|
725 @return System wide error code. |
705 @return System wide error code. |
726 */ |
706 */ |
727 TInt CLocalProxyDrive::DeleteNotify(TInt64 aPos, TInt aLength) |
707 TInt CLocalProxyDrive::DeleteNotify(TInt64 aPos, TInt aLength) |
728 { |
708 { |
729 TRACE4(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveDeleteNotify, EF32TraceUidProxyDrive, |
709 OstTraceExt4(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEDELETENOTIFY, "this %x aPos %x:%x aLength %d", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), (TUint) aLength); |
730 this, I64LOW(aPos), I64HIGH(aPos), aLength); |
|
731 |
|
732 TInt r = iLocDrv.DeleteNotify(aPos, aLength); |
710 TInt r = iLocDrv.DeleteNotify(aPos, aLength); |
733 |
711 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEDELETENOTIFYRET, "r %d", r); |
734 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveDeleteNotifyRet, EF32TraceUidProxyDrive, r); |
|
735 return r; |
712 return r; |
736 } |
713 } |
737 |
714 |
738 |
715 |
739 /** |
716 /** |
743 |
720 |
744 @return System wide error code. |
721 @return System wide error code. |
745 */ |
722 */ |
746 TInt CLocalProxyDrive::GetLastErrorInfo(TDes8 &aErrorInfo) |
723 TInt CLocalProxyDrive::GetLastErrorInfo(TDes8 &aErrorInfo) |
747 { |
724 { |
748 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveGetLastErrorInfo, EF32TraceUidProxyDrive, this); |
725 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEGETLASTERRORINFO, "this %x", this); |
749 |
|
750 TInt r = iLocDrv.GetLastErrorInfo(aErrorInfo); |
726 TInt r = iLocDrv.GetLastErrorInfo(aErrorInfo); |
751 |
727 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEGETLASTERRORINFORET, "r %d", r); |
752 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveGetLastErrorInfoRet, EF32TraceUidProxyDrive, r); |
|
753 return r; |
728 return r; |
754 } |
729 } |
755 |
730 |
756 |
731 |
757 TInt CLocalProxyDrive::GetInterface(TInt aInterfaceId,TAny*& aInterface,TAny* aInput) |
732 TInt CLocalProxyDrive::GetInterface(TInt aInterfaceId,TAny*& aInterface,TAny* aInput) |
758 { |
733 { |
759 TRACE3(UTF::EBorder, UTraceModuleProxyDrive::ECLocalProxyDriveGetInterface, EF32TraceUidProxyDrive, |
734 OstTraceExt3(TRACE_DRIVE, PROXYDRIVE_ECLOCALPROXYDRIVEGETINTERFACE, "this %x aInterfaceId %d aInput %x", (TUint) this, (TUint) aInterfaceId, (TUint) aInput); |
760 this, aInterfaceId, aInput); |
|
761 |
|
762 TInt r; |
735 TInt r; |
763 switch(aInterfaceId) |
736 switch(aInterfaceId) |
764 { |
737 { |
765 case EGetLocalDrive: |
738 case EGetLocalDrive: |
766 __ASSERT_ALWAYS((CProxyDrive*)aInput==this,Fault(ELocDrvInvalidLocalDrive)); |
739 __ASSERT_ALWAYS((CProxyDrive*)aInput==this,Fault(ELocDrvInvalidLocalDrive)); |
812 |
784 |
813 @return system wide error code. |
785 @return system wide error code. |
814 */ |
786 */ |
815 EXPORT_C TInt CBaseExtProxyDrive::Initialise() |
787 EXPORT_C TInt CBaseExtProxyDrive::Initialise() |
816 { |
788 { |
817 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveInitialise, EF32TraceUidProxyDrive, this); |
789 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEINITIALISE, "this %x", this); |
818 |
|
819 TInt r = iProxy->Initialise(); |
790 TInt r = iProxy->Initialise(); |
820 |
791 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEINITIALISERET, "r %d", r); |
821 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveInitialiseRet, EF32TraceUidProxyDrive, r); |
|
822 return r; |
792 return r; |
823 } |
793 } |
824 |
794 |
825 |
795 |
826 /** |
796 /** |
828 |
798 |
829 @return KErrNone. |
799 @return KErrNone. |
830 */ |
800 */ |
831 EXPORT_C TInt CBaseExtProxyDrive::Dismounted() |
801 EXPORT_C TInt CBaseExtProxyDrive::Dismounted() |
832 { |
802 { |
833 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveDismounted, EF32TraceUidProxyDrive, this); |
803 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEDISMOUNTED, "this %x", this); |
834 |
|
835 TInt r = iProxy->Dismounted(); |
804 TInt r = iProxy->Dismounted(); |
836 |
805 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEDISMOUNTEDRET, "r %d", r); |
837 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveDismountedRet, EF32TraceUidProxyDrive, r); |
|
838 return r; |
806 return r; |
839 } |
807 } |
840 |
808 |
841 /** |
809 /** |
842 Increase the size of the proxy drive by the specified length (in bytes). |
810 Increase the size of the proxy drive by the specified length (in bytes). |
845 |
813 |
846 @return system wide error code. |
814 @return system wide error code. |
847 */ |
815 */ |
848 EXPORT_C TInt CBaseExtProxyDrive::Enlarge(TInt aLength) |
816 EXPORT_C TInt CBaseExtProxyDrive::Enlarge(TInt aLength) |
849 { |
817 { |
850 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveEnlarge, EF32TraceUidProxyDrive, this, aLength); |
818 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEENLARGE, "this %x aLength %d", (TUint) this, (TUint) aLength); |
851 |
|
852 TInt r = iProxy->Enlarge(aLength); |
819 TInt r = iProxy->Enlarge(aLength); |
853 |
820 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEENLARGERET, "r %d", r); |
854 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveEnlargeRet, EF32TraceUidProxyDrive, r); |
|
855 return r; |
821 return r; |
856 } |
822 } |
857 |
823 |
858 |
824 |
859 /** |
825 /** |
867 |
833 |
868 @return system wide error code. |
834 @return system wide error code. |
869 */ |
835 */ |
870 EXPORT_C TInt CBaseExtProxyDrive::ReduceSize(TInt aPos, TInt aLength) |
836 EXPORT_C TInt CBaseExtProxyDrive::ReduceSize(TInt aPos, TInt aLength) |
871 { |
837 { |
872 TRACE3(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveReduceSize, EF32TraceUidProxyDrive, this, aPos, aLength); |
838 OstTraceExt3(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREDUCESIZE, "this %x aPos %x aLength %d", (TUint) this, (TUint) aPos, (TUint) aLength); |
873 |
|
874 TInt r = iProxy->ReduceSize(aPos,aLength); |
839 TInt r = iProxy->ReduceSize(aPos,aLength); |
875 |
840 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREDUCESIZERET, "r %d", r); |
876 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveReduceSizeRet, EF32TraceUidProxyDrive, r); |
|
877 return r; |
841 return r; |
878 } |
842 } |
879 |
843 |
880 |
844 |
881 /** |
845 /** |
891 @return system wide error code. |
855 @return system wide error code. |
892 */ |
856 */ |
893 EXPORT_C TInt CBaseExtProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt aOffset,TInt aFlags) |
857 EXPORT_C TInt CBaseExtProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt aOffset,TInt aFlags) |
894 { |
858 { |
895 TRACETHREADIDH(aThreadHandle); |
859 TRACETHREADIDH(aThreadHandle); |
896 TRACE8(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveRead1, EF32TraceUidProxyDrive, |
860 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREAD1, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
897 this, I64LOW(aPos), I64HIGH(aPos), aLength, aTrg, threadId, aOffset, aFlags); |
|
898 |
|
899 TInt r = iProxy->Read(aPos,aLength,aTrg,aThreadHandle,aOffset,aFlags); |
861 TInt r = iProxy->Read(aPos,aLength,aTrg,aThreadHandle,aOffset,aFlags); |
900 |
862 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREAD1RET, "r %d", r); |
901 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveRead1Ret, EF32TraceUidProxyDrive, r); |
|
902 |
|
903 return r; |
863 return r; |
904 } |
864 } |
905 |
865 |
906 |
866 |
907 /** |
867 /** |
916 @return system wide error code. |
876 @return system wide error code. |
917 */ |
877 */ |
918 EXPORT_C TInt CBaseExtProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt anOffset) |
878 EXPORT_C TInt CBaseExtProxyDrive::Read(TInt64 aPos,TInt aLength,const TAny* aTrg,TInt aThreadHandle,TInt anOffset) |
919 { |
879 { |
920 TRACETHREADIDH(aThreadHandle); |
880 TRACETHREADIDH(aThreadHandle); |
921 TRACE7(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveRead2, EF32TraceUidProxyDrive, |
881 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREAD2, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
922 this, I64LOW(aPos), I64HIGH(aPos), aLength, aTrg, threadId, anOffset); |
|
923 |
|
924 TInt r = iProxy->Read(aPos,aLength,aTrg,aThreadHandle,anOffset); |
882 TInt r = iProxy->Read(aPos,aLength,aTrg,aThreadHandle,anOffset); |
925 |
883 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREAD2RET, "r %d", r); |
926 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveRead2Ret, EF32TraceUidProxyDrive, r); |
|
927 return r; |
884 return r; |
928 } |
885 } |
929 |
886 |
930 |
887 |
931 /** |
888 /** |
937 |
894 |
938 @return system wide error code. |
895 @return system wide error code. |
939 */ |
896 */ |
940 EXPORT_C TInt CBaseExtProxyDrive::Read(TInt64 aPos,TInt aLength,TDes8& aTrg) |
897 EXPORT_C TInt CBaseExtProxyDrive::Read(TInt64 aPos,TInt aLength,TDes8& aTrg) |
941 { |
898 { |
942 TRACE5(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveRead3, EF32TraceUidProxyDrive, |
899 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREAD3, "this %x aPos %x:%x aLength %d aTrg %x", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength, (TUint) &aTrg); |
943 this, I64LOW(aPos), I64HIGH(aPos), aLength, &aTrg); |
900 |
944 |
|
945 TInt r = iProxy->Read(aPos,aLength,aTrg); |
901 TInt r = iProxy->Read(aPos,aLength,aTrg); |
946 |
902 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEREAD3RET, "r %d", r); |
947 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveRead3Ret, EF32TraceUidProxyDrive, r); |
|
948 return r; |
903 return r; |
949 } |
904 } |
950 |
905 |
951 |
906 |
952 /** |
907 /** |
962 @return system wide error code. |
917 @return system wide error code. |
963 */ |
918 */ |
964 EXPORT_C TInt CBaseExtProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt aOffset,TInt aFlags) |
919 EXPORT_C TInt CBaseExtProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt aOffset,TInt aFlags) |
965 { |
920 { |
966 TRACETHREADIDH(aThreadHandle); |
921 TRACETHREADIDH(aThreadHandle); |
967 TRACE8(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveWrite1, EF32TraceUidProxyDrive, |
922 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEWRITE1, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
968 this, I64LOW(aPos), I64HIGH(aPos), aLength, aSrc, threadId, aOffset, aFlags); |
|
969 |
|
970 TInt r = iProxy->Write(aPos,aLength,aSrc,aThreadHandle,aOffset,aFlags); |
923 TInt r = iProxy->Write(aPos,aLength,aSrc,aThreadHandle,aOffset,aFlags); |
971 |
924 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEWRITE1RET, "r %d", r); |
972 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveWrite1Ret, EF32TraceUidProxyDrive, r); |
|
973 return r; |
925 return r; |
974 } |
926 } |
975 |
927 |
976 |
928 |
977 /** |
929 /** |
986 @return system wide error code. |
938 @return system wide error code. |
987 */ |
939 */ |
988 EXPORT_C TInt CBaseExtProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt anOffset) |
940 EXPORT_C TInt CBaseExtProxyDrive::Write(TInt64 aPos,TInt aLength,const TAny* aSrc,TInt aThreadHandle,TInt anOffset) |
989 { |
941 { |
990 TRACETHREADIDH(aThreadHandle); |
942 TRACETHREADIDH(aThreadHandle); |
991 TRACE7(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveWrite2, EF32TraceUidProxyDrive, |
943 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEWRITE2, "this %x clientThreadId %x aPos %x:%x aLength %d", (TUint) this, (TUint) threadId, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aLength); |
992 this, I64LOW(aPos), I64HIGH(aPos), aLength, aSrc, threadId, anOffset); |
|
993 |
|
994 TInt r = iProxy->Write(aPos,aLength,aSrc,aThreadHandle,anOffset); |
944 TInt r = iProxy->Write(aPos,aLength,aSrc,aThreadHandle,anOffset); |
995 |
945 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEWRITE2RET, "r %d", r); |
996 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveWrite2Ret, EF32TraceUidProxyDrive, r); |
|
997 return r; |
946 return r; |
998 } |
947 } |
999 |
948 |
1000 |
949 |
1001 /** |
950 /** |
1006 |
955 |
1007 @return system wide error code. |
956 @return system wide error code. |
1008 */ |
957 */ |
1009 EXPORT_C TInt CBaseExtProxyDrive::Write(TInt64 aPos,const TDesC8& aSrc) |
958 EXPORT_C TInt CBaseExtProxyDrive::Write(TInt64 aPos,const TDesC8& aSrc) |
1010 { |
959 { |
1011 TRACE5(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveWrite3, EF32TraceUidProxyDrive, |
960 OstTraceExt5(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEWRITE3, "this %x aPos %x:%x aLength %d aSrc %x", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), aSrc.Length(), (TUint) &aSrc); |
1012 this, I64LOW(aPos), I64HIGH(aPos), aSrc.Length(), &aSrc); |
|
1013 |
|
1014 TInt r = iProxy->Write(aPos,aSrc); |
961 TInt r = iProxy->Write(aPos,aSrc); |
1015 |
962 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEWRITE3RET, "r %d", r); |
1016 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveWrite3Ret, EF32TraceUidProxyDrive, r); |
|
1017 return r; |
963 return r; |
1018 } |
964 } |
1019 |
965 |
1020 |
966 |
1021 /** |
967 /** |
1025 |
971 |
1026 @return system wide error code |
972 @return system wide error code |
1027 */ |
973 */ |
1028 EXPORT_C TInt CBaseExtProxyDrive::Caps(TDes8& anInfo) |
974 EXPORT_C TInt CBaseExtProxyDrive::Caps(TDes8& anInfo) |
1029 { |
975 { |
1030 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveCaps, EF32TraceUidProxyDrive, this); |
976 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVECAPS, "this %x", this); |
1031 |
|
1032 TInt r = iProxy->Caps(anInfo); |
977 TInt r = iProxy->Caps(anInfo); |
1033 |
978 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVECAPSRET, "r %d", r); |
1034 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveCapsRet, EF32TraceUidProxyDrive, r); |
|
1035 return r; |
979 return r; |
1036 } |
980 } |
1037 |
981 |
1038 |
982 |
1039 /** |
983 /** |
1043 |
987 |
1044 @return system wide error code. |
988 @return system wide error code. |
1045 */ |
989 */ |
1046 EXPORT_C TInt CBaseExtProxyDrive::Format(TFormatInfo& anInfo) |
990 EXPORT_C TInt CBaseExtProxyDrive::Format(TFormatInfo& anInfo) |
1047 { |
991 { |
1048 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveFormat1, EF32TraceUidProxyDrive, this); |
992 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEFORMAT1, "this %x", this); |
1049 |
|
1050 TInt r = iProxy->Format(anInfo); |
993 TInt r = iProxy->Format(anInfo); |
1051 |
994 OstTraceExt4(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEFORMAT1RET, "r %d iFormatIsCurrent %d i512ByteSectorsFormatted %d iMaxBytesPerFormat %d", (TUint) r, (TUint) anInfo.iFormatIsCurrent, (TUint) anInfo.i512ByteSectorsFormatted, (TUint) anInfo.iMaxBytesPerFormat); |
1052 TRACE4(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveFormat1Ret, EF32TraceUidProxyDrive, |
|
1053 r, anInfo.iFormatIsCurrent, anInfo.i512ByteSectorsFormatted, anInfo.iMaxBytesPerFormat); |
|
1054 return r; |
995 return r; |
1055 } |
996 } |
1056 |
997 |
1057 |
998 |
1058 /** |
999 /** |
1063 |
1004 |
1064 @return system wide error code. |
1005 @return system wide error code. |
1065 */ |
1006 */ |
1066 EXPORT_C TInt CBaseExtProxyDrive::Format(TInt64 aPos,TInt aLength) |
1007 EXPORT_C TInt CBaseExtProxyDrive::Format(TInt64 aPos,TInt aLength) |
1067 { |
1008 { |
1068 TRACE4(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveFormat2, EF32TraceUidProxyDrive, |
1009 OstTraceExt4(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEFORMAT2, "this %x aPos %x:%x aLength %d", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), (TUint) aLength); |
1069 this, I64LOW(aPos), I64HIGH(aPos), aLength); |
|
1070 |
|
1071 TInt r = iProxy->Format(aPos,aLength); |
1010 TInt r = iProxy->Format(aPos,aLength); |
1072 |
1011 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEFORMAT2RET, "r %d", r); |
1073 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveFormat2Ret, EF32TraceUidProxyDrive, r); |
|
1074 return r; |
1012 return r; |
1075 } |
1013 } |
1076 |
1014 |
1077 |
1015 |
1078 /** |
1016 /** |
1083 |
1021 |
1084 @return system wide error code. |
1022 @return system wide error code. |
1085 */ |
1023 */ |
1086 EXPORT_C TInt CBaseExtProxyDrive::SetMountInfo(const TDesC8* aMountInfo,TInt aMountInfoThreadHandle) |
1024 EXPORT_C TInt CBaseExtProxyDrive::SetMountInfo(const TDesC8* aMountInfo,TInt aMountInfoThreadHandle) |
1087 { |
1025 { |
1088 TRACE3(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveSetMountInfo, EF32TraceUidProxyDrive, this, aMountInfo, aMountInfoThreadHandle); |
1026 OstTraceExt3(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVESETMOUNTINFO, "this %x aMountInfo %x aMountInfoThreadHandle %x", (TUint) this, (TUint) aMountInfo, (TUint) aMountInfoThreadHandle); |
1089 |
|
1090 TInt r = iProxy->SetMountInfo(aMountInfo,aMountInfoThreadHandle); |
1027 TInt r = iProxy->SetMountInfo(aMountInfo,aMountInfoThreadHandle); |
1091 |
1028 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVESETMOUNTINFORET, "r %d", r); |
1092 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveSetMountInfoRet, EF32TraceUidProxyDrive, r); |
|
1093 return r; |
1029 return r; |
1094 } |
1030 } |
1095 |
1031 |
1096 |
1032 |
1097 /** |
1033 /** |
1101 |
1037 |
1102 @return system wide error code. |
1038 @return system wide error code. |
1103 */ |
1039 */ |
1104 EXPORT_C TInt CBaseExtProxyDrive::ForceRemount(TUint aFlags) |
1040 EXPORT_C TInt CBaseExtProxyDrive::ForceRemount(TUint aFlags) |
1105 { |
1041 { |
1106 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveForceRemount, EF32TraceUidProxyDrive, this, aFlags); |
1042 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEFORCEREMOUNT, "this %x aFlags%x", (TUint) this, (TUint) aFlags); |
1107 |
|
1108 TInt r = iProxy->ForceRemount(aFlags); |
1043 TInt r = iProxy->ForceRemount(aFlags); |
1109 |
1044 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEFORCEREMOUNTRET, "r %d", r); |
1110 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveForceRemountRet, EF32TraceUidProxyDrive, r); |
|
1111 return r; |
1045 return r; |
1112 } |
1046 } |
1113 |
1047 |
1114 |
1048 |
1115 /** |
1049 /** |
1120 |
1054 |
1121 @return system wide error code. |
1055 @return system wide error code. |
1122 */ |
1056 */ |
1123 EXPORT_C TInt CBaseExtProxyDrive::Unlock(TMediaPassword &aPassword, TBool aStorePassword) |
1057 EXPORT_C TInt CBaseExtProxyDrive::Unlock(TMediaPassword &aPassword, TBool aStorePassword) |
1124 { |
1058 { |
1125 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveUnlock, EF32TraceUidProxyDrive, this, aStorePassword); |
1059 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEUNLOCK, "this %x aPassword %d", (TUint) this, (TUint) aStorePassword); |
1126 |
|
1127 TInt r = iProxy->Unlock(aPassword,aStorePassword); |
1060 TInt r = iProxy->Unlock(aPassword,aStorePassword); |
1128 |
1061 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEUNLOCKRET, "r %d", r); |
1129 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveUnlockRet, EF32TraceUidProxyDrive, r); |
|
1130 return r; |
1062 return r; |
1131 } |
1063 } |
1132 |
1064 |
1133 |
1065 |
1134 /** |
1066 /** |
1140 |
1072 |
1141 @return system wide error code. |
1073 @return system wide error code. |
1142 */ |
1074 */ |
1143 EXPORT_C TInt CBaseExtProxyDrive::Lock(TMediaPassword &aOldPassword, TMediaPassword &aNewPassword, TBool aStorePassword) |
1075 EXPORT_C TInt CBaseExtProxyDrive::Lock(TMediaPassword &aOldPassword, TMediaPassword &aNewPassword, TBool aStorePassword) |
1144 { |
1076 { |
1145 TRACE2(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveLock, EF32TraceUidProxyDrive, this, aStorePassword); |
1077 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVELOCK, "this %x aPassword %d", (TUint) this, (TUint) aStorePassword); |
1146 |
|
1147 TInt r = iProxy->Lock(aOldPassword,aNewPassword,aStorePassword); |
1078 TInt r = iProxy->Lock(aOldPassword,aNewPassword,aStorePassword); |
1148 |
1079 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVELOCKRET, "r %d", r); |
1149 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveLockRet, EF32TraceUidProxyDrive, r); |
|
1150 return r; |
1080 return r; |
1151 } |
1081 } |
1152 |
1082 |
1153 |
1083 |
1154 /** |
1084 /** |
1158 |
1088 |
1159 @return system wide error code. |
1089 @return system wide error code. |
1160 */ |
1090 */ |
1161 EXPORT_C TInt CBaseExtProxyDrive::Clear(TMediaPassword &aPassword) |
1091 EXPORT_C TInt CBaseExtProxyDrive::Clear(TMediaPassword &aPassword) |
1162 { |
1092 { |
1163 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveClear, EF32TraceUidProxyDrive, this); |
1093 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVECLEAR, "this %x", this); |
1164 |
|
1165 TInt r = iProxy->Clear(aPassword); |
1094 TInt r = iProxy->Clear(aPassword); |
1166 |
1095 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVECLEARRET, "r %d", r); |
1167 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveClearRet, EF32TraceUidProxyDrive, r); |
|
1168 return r; |
1096 return r; |
1169 } |
1097 } |
1170 |
1098 |
1171 /** |
1099 /** |
1172 Forcibly unlock a password-enabled proxy drive. |
1100 Forcibly unlock a password-enabled proxy drive. |
1173 |
1101 |
1174 @return system wide error code. |
1102 @return system wide error code. |
1175 */ |
1103 */ |
1176 EXPORT_C TInt CBaseExtProxyDrive::ErasePassword() |
1104 EXPORT_C TInt CBaseExtProxyDrive::ErasePassword() |
1177 { |
1105 { |
1178 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveErasePassword, EF32TraceUidProxyDrive, this); |
1106 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEERASEPASSWORD, "this %x", this); |
1179 |
|
1180 TInt r = iProxy->ErasePassword(); |
1107 TInt r = iProxy->ErasePassword(); |
1181 |
1108 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEERASEPASSWORDRET, "r %d", r); |
1182 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveErasePasswordRet, EF32TraceUidProxyDrive, r); |
|
1183 return r; |
1109 return r; |
1184 } |
1110 } |
1185 |
1111 |
1186 /** |
1112 /** |
1187 An interface with which control commands can be passed to |
1113 An interface with which control commands can be passed to |
1194 |
1120 |
1195 @return system wide error code. |
1121 @return system wide error code. |
1196 */ |
1122 */ |
1197 EXPORT_C TInt CBaseExtProxyDrive::ControlIO(const RMessagePtr2& aMessage,TInt aCommand,TAny* aParam1,TAny* aParam2) |
1123 EXPORT_C TInt CBaseExtProxyDrive::ControlIO(const RMessagePtr2& aMessage,TInt aCommand,TAny* aParam1,TAny* aParam2) |
1198 { |
1124 { |
1199 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveControlIO, EF32TraceUidProxyDrive, this); |
1125 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVECONTROLIO, "this %x", this); |
1200 |
|
1201 TInt r = iProxy->ControlIO(aMessage,aCommand,aParam1,aParam2); |
1126 TInt r = iProxy->ControlIO(aMessage,aCommand,aParam1,aParam2); |
1202 |
1127 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVECONTROLIORET, "r %d", r); |
1203 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveControlIORet, EF32TraceUidProxyDrive, r); |
|
1204 return r; |
1128 return r; |
1205 } |
1129 } |
1206 |
1130 |
1207 |
1131 |
1208 /** |
1132 /** |
1214 |
1138 |
1215 @return system wide error code. |
1139 @return system wide error code. |
1216 */ |
1140 */ |
1217 EXPORT_C TInt CBaseExtProxyDrive::GetInterface(TInt aInterfaceId,TAny*& aInterface,TAny* aInput) |
1141 EXPORT_C TInt CBaseExtProxyDrive::GetInterface(TInt aInterfaceId,TAny*& aInterface,TAny* aInput) |
1218 { |
1142 { |
1219 TRACE3(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveGetInterface, EF32TraceUidProxyDrive, |
1143 OstTraceExt3(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEGETINTERFACE, "this %x aInterfaceId %d aInput %x", (TUint) this, (TUint) aInterfaceId, (TUint) aInput); |
1220 this, aInterfaceId, aInput); |
1144 |
1221 |
|
1222 TInt r; |
1145 TInt r; |
1223 if (aInterfaceId==EGetLocalDrive) |
1146 if (aInterfaceId==EGetLocalDrive) |
1224 { |
1147 { |
1225 r = iProxy->GetLocalDrive((TBusLocalDrive*&)aInterface); // iProxy is of type CLocalProxyDrive, so OK to reenter |
1148 r = iProxy->GetLocalDrive((TBusLocalDrive*&)aInterface); // iProxy is of type CLocalProxyDrive, so OK to reenter |
1226 } |
1149 } |
1227 else |
1150 else |
1228 r = CProxyDrive::GetInterface(aInterfaceId,aInterface,aInput); |
1151 r = CProxyDrive::GetInterface(aInterfaceId,aInterface,aInput); |
1229 |
1152 OstTraceExt2(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEGETINTERFACERET, "r %d aInterface %x", (TUint) r, (TUint) aInterface); |
1230 TRACERET2(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveGetInterfaceRet, EF32TraceUidProxyDrive, r, aInterface); |
|
1231 return r; |
1153 return r; |
1232 } |
1154 } |
1233 |
1155 |
1234 |
1156 |
1235 /** |
1157 /** |
1239 |
1161 |
1240 @return System wide error code. |
1162 @return System wide error code. |
1241 */ |
1163 */ |
1242 EXPORT_C TInt CBaseExtProxyDrive::GetLastErrorInfo(TDes8 &aErrorInfo) |
1164 EXPORT_C TInt CBaseExtProxyDrive::GetLastErrorInfo(TDes8 &aErrorInfo) |
1243 { |
1165 { |
1244 TRACE1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveGetLastErrorInfo, EF32TraceUidProxyDrive, this); |
1166 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEGETLASTERRORINFO, "this %x", this); |
1245 |
|
1246 TInt r = iProxy->GetLastErrorInfo(aErrorInfo); |
1167 TInt r = iProxy->GetLastErrorInfo(aErrorInfo); |
1247 |
1168 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEGETLASTERRORINFORET, "r %d", r); |
1248 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveGetLastErrorInfoRet, EF32TraceUidProxyDrive, r); |
|
1249 return r; |
1169 return r; |
1250 } |
1170 } |
1251 |
1171 |
1252 |
1172 |
1253 /** |
1173 /** |
1259 |
1179 |
1260 @return System wide error code. |
1180 @return System wide error code. |
1261 */ |
1181 */ |
1262 EXPORT_C TInt CBaseExtProxyDrive::DeleteNotify(TInt64 aPos, TInt aLength) |
1182 EXPORT_C TInt CBaseExtProxyDrive::DeleteNotify(TInt64 aPos, TInt aLength) |
1263 { |
1183 { |
1264 TRACE4(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveDeleteNotify, EF32TraceUidProxyDrive, |
1184 OstTraceExt4(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEDELETENOTIFY, "this %x aPos %x:%x aLength %d", (TUint) this, (TUint) I64HIGH(aPos), (TUint) I64LOW(aPos), (TUint) aLength); |
1265 this, I64LOW(aPos), I64HIGH(aPos), aLength); |
|
1266 |
|
1267 TInt r = iProxy->DeleteNotify(aPos, aLength); |
1185 TInt r = iProxy->DeleteNotify(aPos, aLength); |
1268 |
1186 OstTrace1(TRACE_DRIVE, PROXYDRIVE_ECBASEEXTPROXYDRIVEDELETENOTIFYRET, "r %d", r); |
1269 TRACERET1(UTF::EBorder, UTraceModuleProxyDrive::ECBaseExtProxyDriveDeleteNotifyRet, EF32TraceUidProxyDrive, r); |
|
1270 return r; |
1187 return r; |
1271 } |
1188 } |
1272 |
1189 |
1273 |
1190 |
1274 /** |
1191 /** |
1337 TDrive& drive=TheDrives[aMount->Drive().DriveNumber()]; |
1254 TDrive& drive=TheDrives[aMount->Drive().DriveNumber()]; |
1338 if(drive.ExtInfo().iCount==0) |
1255 if(drive.ExtInfo().iCount==0) |
1339 return(aConcreteDrive); |
1256 return(aConcreteDrive); |
1340 |
1257 |
1341 TBool extSupported = drive.FSys().IsExtensionSupported(); |
1258 TBool extSupported = drive.FSys().IsExtensionSupported(); |
1342 TRACE1(UTF::EBorder, UTraceModuleFileSys::ECFileSystemIsExtensionSupported, EF32TraceUidProxyDrive, extSupported); |
1259 OstTraceExt2(TRACE_DRIVE, FSYS_ECFILESYSTEMISEXTENSIONSUPPORTED2, "%x r %d", (TUint) &drive.FSys(), (TUint) extSupported); |
1343 if(!extSupported) |
1260 if(!extSupported) |
1344 { |
1261 { |
1345 delete(aConcreteDrive); |
1262 delete(aConcreteDrive); |
1346 User::Leave(KErrAccessDenied); |
1263 User::Leave(KErrAccessDenied); |
1347 } |
1264 } |