Esempio n. 1
0
        /// <summary>
        ///  Check if a dir/file name contains invalid character
        /// </summary>
        ///  @param [in] name -- contains dir/file name to be checked
        ///                      on return, it contains a whitespace-trimmed version
        /// </param>
        ///  <returns> null -- contains invalid characters </returns>
        ///  <returns> String -- may be modified name </returns>
        protected internal virtual string checkInvalidChars(string name)
        {
            if (SqlFsFunc.isNullOrEmpty(name))
            {
                return(null);
            }

            string trimmedStr = SqlFsFunc.Trim(name, SqlFsConst.CHARSTOTRIM);

            if (SqlFsFunc.isNullOrEmpty(trimmedStr))        // check once again
            {
                return(null);
            }

            if (SqlFsFunc.indexOfAny(trimmedStr, SqlFsConst.INVALIDCHARS) >= 0)
            {
                return(null);
            }

            if (trimmedStr.Equals(SqlFsConst.CURDIR))        // can't be '.'
            {
                return(null);
            }

            if (trimmedStr.Equals(SqlFsConst.PARENTDIR))        // can't be '..'
            {
                return(null);
            }

            return(trimmedStr);
        }