VirtualBox

Changeset 69955 in vbox for trunk/src/VBox/Runtime/common/fs


Ignore:
Timestamp:
Dec 6, 2017 12:26:37 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
119457
Message:

IPRT/vfs: Made pfnSetMode, pfnSetTimes, pfnSetOwner and pfnWrite optional and fallback to VERR_WRITE_PROTECT.

Location:
trunk/src/VBox/Runtime/common/fs
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/common/fs/isomaker.cpp

    r69942 r69955  
    72507250
    72517251/**
    7252  * @interface_method_impl{RTVFSIOSTREAMOPS,pfnWrite}
    7253  */
    7254 static DECLCALLBACK(int) rtFsIsoMakerOutFile_Write(void *pvThis, RTFOFF off, PCRTSGBUF pSgBuf, bool fBlocking, size_t *pcbWritten)
    7255 {
    7256     RT_NOREF(pvThis, off, pSgBuf, fBlocking, pcbWritten);
    7257     return VERR_WRITE_PROTECT;
    7258 }
    7259 
    7260 
    7261 /**
    72627252 * @interface_method_impl{RTVFSIOSTREAMOPS,pfnFlush}
    72637253 */
     
    72877277    RTFOFF offIgnored;
    72887278    return rtFsIsoMakerOutFile_Seek(pvThis, cb, RTFILE_SEEK_CURRENT, &offIgnored);
    7289 }
    7290 
    7291 
    7292 /**
    7293  * @interface_method_impl{RTVFSOBJSETOPS,pfnMode}
    7294  */
    7295 static DECLCALLBACK(int) rtFsIsoMakerOutFile_SetMode(void *pvThis, RTFMODE fMode, RTFMODE fMask)
    7296 {
    7297     RT_NOREF(pvThis, fMode, fMask);
    7298     return VERR_WRITE_PROTECT;
    7299 }
    7300 
    7301 
    7302 /**
    7303  * @interface_method_impl{RTVFSOBJSETOPS,pfnSetTimes}
    7304  */
    7305 static DECLCALLBACK(int) rtFsIsoMakerOutFile_SetTimes(void *pvThis, PCRTTIMESPEC pAccessTime, PCRTTIMESPEC pModificationTime,
    7306                                                       PCRTTIMESPEC pChangeTime, PCRTTIMESPEC pBirthTime)
    7307 {
    7308     RT_NOREF(pvThis, pAccessTime, pModificationTime, pChangeTime, pBirthTime);
    7309     return VERR_WRITE_PROTECT;
    7310 }
    7311 
    7312 
    7313 /**
    7314  * @interface_method_impl{RTVFSOBJSETOPS,pfnSetOwner}
    7315  */
    7316 static DECLCALLBACK(int) rtFsIsoMakerOutFile_SetOwner(void *pvThis, RTUID uid, RTGID gid)
    7317 {
    7318     RT_NOREF(pvThis, uid, gid);
    7319     return VERR_WRITE_PROTECT;
    73207279}
    73217280
     
    74027361        RTVFSIOSTREAMOPS_FEAT_NO_SG,
    74037362        rtFsIsoMakerOutFile_Read,
    7404         rtFsIsoMakerOutFile_Write,
     7363        NULL /*Write*/,
    74057364        rtFsIsoMakerOutFile_Flush,
    74067365        NULL /*PollOne*/,
     
    74157374        RTVFSOBJSETOPS_VERSION,
    74167375        RT_OFFSETOF(RTVFSFILEOPS, Stream.Obj) - RT_OFFSETOF(RTVFSFILEOPS, ObjSet),
    7417         rtFsIsoMakerOutFile_SetMode,
    7418         rtFsIsoMakerOutFile_SetTimes,
    7419         rtFsIsoMakerOutFile_SetOwner,
     7376        NULL /*SetMode*/,
     7377        NULL /*SetTimes*/,
     7378        NULL /*SetOwner*/,
    74207379        RTVFSOBJSETOPS_VERSION
    74217380    },
  • trunk/src/VBox/Runtime/common/fs/isovfs.cpp

    r69924 r69955  
    20282028
    20292029/**
    2030  * @interface_method_impl{RTVFSIOSTREAMOPS,pfnWrite}
    2031  */
    2032 static DECLCALLBACK(int) rtFsIsoFile_Write(void *pvThis, RTFOFF off, PCRTSGBUF pSgBuf, bool fBlocking, size_t *pcbWritten)
    2033 {
    2034     RT_NOREF(pvThis, off, pSgBuf, fBlocking, pcbWritten);
    2035     return VERR_WRITE_PROTECT;
    2036 }
    2037 
    2038 
    2039 /**
    20402030 * @interface_method_impl{RTVFSIOSTREAMOPS,pfnFlush}
    20412031 */
     
    20852075    *poffActual = pThis->offFile;
    20862076    return VINF_SUCCESS;
    2087 }
    2088 
    2089 
    2090 /**
    2091  * @interface_method_impl{RTVFSOBJSETOPS,pfnMode}
    2092  */
    2093 static DECLCALLBACK(int) rtFsIsoFile_SetMode(void *pvThis, RTFMODE fMode, RTFMODE fMask)
    2094 {
    2095     RT_NOREF(pvThis, fMode, fMask);
    2096     return VERR_WRITE_PROTECT;
    2097 }
    2098 
    2099 
    2100 /**
    2101  * @interface_method_impl{RTVFSOBJSETOPS,pfnSetTimes}
    2102  */
    2103 static DECLCALLBACK(int) rtFsIsoFile_SetTimes(void *pvThis, PCRTTIMESPEC pAccessTime, PCRTTIMESPEC pModificationTime,
    2104                                                  PCRTTIMESPEC pChangeTime, PCRTTIMESPEC pBirthTime)
    2105 {
    2106     RT_NOREF(pvThis, pAccessTime, pModificationTime, pChangeTime, pBirthTime);
    2107     return VERR_WRITE_PROTECT;
    2108 }
    2109 
    2110 
    2111 /**
    2112  * @interface_method_impl{RTVFSOBJSETOPS,pfnSetOwner}
    2113  */
    2114 static DECLCALLBACK(int) rtFsIsoFile_SetOwner(void *pvThis, RTUID uid, RTGID gid)
    2115 {
    2116     RT_NOREF(pvThis, uid, gid);
    2117     return VERR_WRITE_PROTECT;
    21182077}
    21192078
     
    21822141        RTVFSIOSTREAMOPS_FEAT_NO_SG,
    21832142        rtFsIsoFile_Read,
    2184         rtFsIsoFile_Write,
     2143        NULL /*Write*/,
    21852144        rtFsIsoFile_Flush,
    21862145        rtFsIsoFile_PollOne,
     
    21952154        RTVFSOBJSETOPS_VERSION,
    21962155        RT_OFFSETOF(RTVFSFILEOPS, Stream.Obj) - RT_OFFSETOF(RTVFSFILEOPS, ObjSet),
    2197         rtFsIsoFile_SetMode,
    2198         rtFsIsoFile_SetTimes,
    2199         rtFsIsoFile_SetOwner,
     2156        NULL /*SetMode*/,
     2157        NULL /*SetTimes*/,
     2158        NULL /*SetOwner*/,
    22002159        RTVFSOBJSETOPS_VERSION
    22012160    },
     
    28562815    PRTFSISODIROBJ pThis = (PRTFSISODIROBJ)pvThis;
    28572816    return rtFsIsoCore_QueryInfo(&pThis->pShared->Core, pObjInfo, enmAddAttr);
    2858 }
    2859 
    2860 
    2861 /**
    2862  * @interface_method_impl{RTVFSOBJSETOPS,pfnMode}
    2863  */
    2864 static DECLCALLBACK(int) rtFsIsoDir_SetMode(void *pvThis, RTFMODE fMode, RTFMODE fMask)
    2865 {
    2866     RT_NOREF(pvThis, fMode, fMask);
    2867     return VERR_WRITE_PROTECT;
    2868 }
    2869 
    2870 
    2871 /**
    2872  * @interface_method_impl{RTVFSOBJSETOPS,pfnSetTimes}
    2873  */
    2874 static DECLCALLBACK(int) rtFsIsoDir_SetTimes(void *pvThis, PCRTTIMESPEC pAccessTime, PCRTTIMESPEC pModificationTime,
    2875                                                  PCRTTIMESPEC pChangeTime, PCRTTIMESPEC pBirthTime)
    2876 {
    2877     RT_NOREF(pvThis, pAccessTime, pModificationTime, pChangeTime, pBirthTime);
    2878     return VERR_WRITE_PROTECT;
    2879 }
    2880 
    2881 
    2882 /**
    2883  * @interface_method_impl{RTVFSOBJSETOPS,pfnSetOwner}
    2884  */
    2885 static DECLCALLBACK(int) rtFsIsoDir_SetOwner(void *pvThis, RTUID uid, RTGID gid)
    2886 {
    2887     RT_NOREF(pvThis, uid, gid);
    2888     return VERR_WRITE_PROTECT;
    28892817}
    28902818
     
    35013429        RTVFSOBJSETOPS_VERSION,
    35023430        RT_OFFSETOF(RTVFSDIROPS, Obj) - RT_OFFSETOF(RTVFSDIROPS, ObjSet),
    3503         rtFsIsoDir_SetMode,
    3504         rtFsIsoDir_SetTimes,
    3505         rtFsIsoDir_SetOwner,
     3431        NULL /*SetMode*/,
     3432        NULL /*SetTimes*/,
     3433        NULL /*SetOwner*/,
    35063434        RTVFSOBJSETOPS_VERSION
    35073435    },
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette