VirtualBox

Changeset 105087 in vbox for trunk/src/VBox/Main/include


Ignore:
Timestamp:
Jul 1, 2024 11:27:59 PM (7 months ago)
Author:
vboxsync
Message:

doc/manual,include/VBox,Frontends/VBoxManage,HostServices/SharedFolders,
Main/{include,SharedFolder,Console,Machine,VirtualBox.xidl}: Add a
new attribute to ISharedFolder for specifying a symbolic link creation
policy to restrict the source pathname when creating symbolic links
within a guest. The symbolic link policies are represented by a new
enumeration of type SymlinkPolicy_T which includes values for no
restrictions ('any'), symlink sources only within the subtree of the
share ('subtree'), symlink sources as any relative path ('relative'),
and no symlinks allowed ('forbidden'). The symlink policy can only be
applied to permanent shared folders at this stage. bugref:10619

Location:
trunk/src/VBox/Main/include
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/include/ConsoleSharedFolderImpl.h

    r105018 r105087  
    8989    const Utf8Str &i_getAutoMountPoint() const;
    9090
     91    /**
     92     * Public internal method for getting the symlink policy.
     93     */
     94    const SymlinkPolicy_T i_getSymlinkPolicy() const;
     95
    9196protected:
    9297
     
    100105private:
    101106
    102     // wrapped ISharedFolder properies.
     107    // wrapped ISharedFolder properties.
    103108    HRESULT getName(com::Utf8Str &aName);
    104109    HRESULT getHostPath(com::Utf8Str &aHostPath);
     
    111116    HRESULT setAutoMountPoint(com::Utf8Str const &aAutoMountPoint);
    112117    HRESULT getLastAccessError(com::Utf8Str &aLastAccessError);
     118    HRESULT getSymlinkPolicy(SymlinkPolicy_T *aSymlinkPolicy);
     119    HRESULT setSymlinkPolicy(SymlinkPolicy_T aSymlinkPolicy);
    113120
    114121    VirtualBoxBase * const mParent;
  • trunk/src/VBox/Main/include/MachineImpl.h

    r105018 r105087  
    911911    friend class RecordingScreenSettings;
    912912    friend class SessionMachine;
     913    friend class SharedFolder;
    913914    friend class SnapshotMachine;
    914915    friend class VirtualBox;
  • trunk/src/VBox/Main/include/SharedFolderImpl.h

    r105018 r105087  
    4949    // public initializer/uninitializer for internal purposes only
    5050    HRESULT init(Machine *aMachine, const com::Utf8Str &aName, const com::Utf8Str &aHostPath,
    51                  bool aWritable, bool aAutoMount, const com::Utf8Str &aAutoMountPoint, bool fFailOnError);
     51                 bool aWritable, bool aAutoMount, const com::Utf8Str &aAutoMountPoint, bool fFailOnError,
     52                 SymlinkPolicy_T enmSymlinkPolicy);
    5253    HRESULT initCopy(Machine *aMachine, SharedFolder *aThat);
    5354//    HRESULT init(Console *aConsole, const com::Utf8Str &aName, const com::Utf8Str &aHostPath,
     
    8990    const Utf8Str &i_getAutoMountPoint() const;
    9091
     92    /**
     93     * Public internal method for getting the symlink policy.
     94     */
     95    const SymlinkPolicy_T i_getSymlinkPolicy() const;
     96
    9197protected:
    9298
     
    97103                            bool aAutoMount,
    98104                            const com::Utf8Str &aAutoMountPoint,
    99                             bool fFailOnError);
     105                            bool fFailOnError,
     106                            SymlinkPolicy_T enmSymlinkPolicy);
    100107private:
    101108
    102     // wrapped ISharedFolder properies.
     109    // wrapped ISharedFolder properties.
    103110    HRESULT getName(com::Utf8Str &aName);
    104111    HRESULT getHostPath(com::Utf8Str &aHostPath);
     
    111118    HRESULT setAutoMountPoint(com::Utf8Str const &aAutoMountPoint);
    112119    HRESULT getLastAccessError(com::Utf8Str &aLastAccessError);
     120    HRESULT getSymlinkPolicy(SymlinkPolicy_T *aSymlinkPolicy);
     121    HRESULT setSymlinkPolicy(SymlinkPolicy_T aSymlinkPolicy);
    113122
    114123    VirtualBoxBase * const mParent;
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