This completes my maintenance pass that needed to be done following the significant changes introduced after developing the fake build process.
* The path file name.
*
* @return
+ * F_true if path was found and path is a directory (or a symlink to a directory).
* F_false if path was found and path is not a directory.
* F_file_found_not if the path was not found.
- * F_true if path was found and path is a directory (or a symlink to a directory).
* F_access_denied (with error bit) if access to the file was denied.
* F_loop (with error bit) on loop error.
* F_memory_out (with error bit) if out of memory.
* Any valid flag, such as f_directory_at_path_empty, f_directory_at_automount_no, or f_directory_at_symlink_follow_no.
*
* @return
+ * F_true if path was found and path is a directory (or a symlink to a directory).
* F_false if path was found and path is not a directory.
* F_file_found_not if the path was not found.
- * F_true if path was found and path is a directory (or a symlink to a directory).
* F_access_denied (with error bit) if access to the file was denied.
* F_directory_descriptor (with error bit) for bad directory descriptor for at_id.
* F_loop (with error bit) on loop error.
* The path file name.
*
* @return
+ * F_true if path was found and path is a directory.
* F_false if path was found and path is not a directory (this includes symlinks).
* F_file_found_not if the path was not found.
- * F_true if path was found and path is a directory.
* F_access_denied (with error bit) if access to the file was denied.
* F_loop (with error bit) on loop error.
* F_memory_out (with error bit) if out of memory.
* Any valid flag, such as f_directory_at_path_empty, f_directory_at_automount_no, or f_directory_at_symlink_follow_no.
*
* @return
+ * F_true if path was found and path is a directory.
* F_false if path was found and path is not a directory.
* F_file_found_not if the path was not found.
- * F_true if path was found and path is a directory.
* F_access_denied (with error bit) if access to the file was denied.
* F_directory_descriptor (with error bit) for bad directory descriptor for at_id.
* F_loop (with error bit) on loop error.
* The path file name.
*
* @return
- * F_false if path was not found.
* F_true if path was found.
+ * F_false if path was not found.
* F_access_denied (with error bit) if access to the file was denied.
* F_directory (with error bit) on invalid directory.
* F_loop (with error bit) on loop error.
* Any valid flag, such as f_file_at_path_empty, f_file_at_automount_no, or f_file_at_symlink_follow_no.
*
* @return
- * F_false if file does not exist.
* F_true if file exists.
+ * F_false if file does not exist.
* F_access_denied (with error bit) on access denied.
* F_directory (with error bit) on invalid directory.
* F_false (with error bit) on unknown/unhandled errors.
* The type of the file
*
* @return
+ * F_true if path was found and path is type.
* F_false if path was found and path is not type.
* F_file_found_not if the path was not found.
- * F_true if path was found and path is type.
* F_access_denied (with error bit) if access to the file was denied.
* F_directory (with error bit) on invalid directory.
* F_loop (with error bit) on loop error.
* Any valid flag, such as f_file_at_path_empty, f_file_at_automount_no, or f_file_at_symlink_follow_no.
*
* @return
+ * F_true if path was found and path is type.
* F_false if path was found and path is not type.
* F_file_found_not if the path was not found.
- * F_true if path was found and path is type.
* F_access_denied (with error bit) if access to the file was denied.
* F_directory (with error bit) on invalid directory.
* F_loop (with error bit) on loop error.
* Identify whether or not the standard input pipe source contains piped data.
*
* @return
- * F_false if there is no piped data.
* F_true if there is piped data.
+ * F_false if there is no piped data.
* F_file_stat (with error bit) on stat() error.
*
* @see fstat()
* For most systems, standard warning does not exist and instead maps to standard output.
*
* @return
- * F_false if there is no piped data.
* F_true if there is piped data.
+ * F_false if there is no piped data.
* F_file_stat (with error bit) on stat() error.
*
* @see fstat()
* Identify whether or not the standard error pipe source contains piped data.
*
* @return
- * F_false if there is no piped data.
* F_true if there is piped data.
+ * F_false if there is no piped data.
* F_file_stat (with error bit) on stat() error.
*
* @see fstat()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 control picture character.
* F_true if a UTF-8 control picture character.
+ * F_false if not a UTF-8 control picture character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is_control_picture()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 character.
* F_true if a UTF-8 character.
+ * F_false if not a UTF-8 character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is_valid()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 whitespace.
* F_true if a UTF-8 whitespace.
+ * F_false if not a UTF-8 whitespace.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is_whitespace()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The number of bytes repesenting the character width.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 non-printing or zero-width character.
* F_true if a UTF-8 non-printing or zero-width character.
+ * F_false if not a UTF-8 non-printing or zero-width character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is_zero_width()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 character.
* F_true if a UTF-8 character.
+ * F_false if not a UTF-8 character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is_valid()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 alphabet character.
* F_true if a UTF-8 alphabet character.
+ * F_false if not a UTF-8 alphabet character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 alpha-numeric character.
* F_true if a UTF-8 alpha-numeric character.
+ * F_false if not a UTF-8 alpha-numeric character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 control picture character.
* F_true if a UTF-8 control picture character.
+ * F_false if not a UTF-8 control picture character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_is_control_picture()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 character.
* F_true if a UTF-8 character.
+ * F_false if not a UTF-8 character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 graph.
* F_true if a UTF-8 graph.
+ * F_false if not a UTF-8 graph.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see isgraph()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 numeric character.
* F_true if a UTF-8 numeric character.
+ * F_false if not a UTF-8 numeric character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 character.
* F_true if a UTF-8 character.
+ * F_false if not a UTF-8 character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_character_is()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 whitespace.
* F_true if a UTF-8 whitespace.
+ * F_false if not a UTF-8 whitespace.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_is_whitespace()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 word character.
* F_true if a UTF-8 word character.
+ * F_false if not a UTF-8 word character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 word or dash character.
* F_true if a UTF-8 word or dash character.
+ * F_false if not a UTF-8 word or dash character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 word or dash character.
* F_true if a UTF-8 word or dash character.
+ * F_false if not a UTF-8 word or dash character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 non-printing or zero-width character.
* F_true if a UTF-8 non-printing or zero-width character.
+ * F_false if not a UTF-8 non-printing or zero-width character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see f_utf_is_zero_width()
* The character to validate.
*
* @return
- * F_false if not a UTF-8 alpha character.
* F_true if a UTF-8 alpha character.
+ * F_false if not a UTF-8 alpha character.
* F_utf (with error bit) if character is an invalid UTF-8 character.
*
* @see iscntrl()
* @todo relocate this outside of f_utf into a more general path, perhaps f_memory (f_memory_is_big_endian).
*
* @return
- * F_false if the system is little-endian.
* F_true if the system is big-endian.
+ * F_false if the system is little-endian.
*/
#ifndef _di_f_utf_is_big_endian_
extern f_return_status f_utf_is_big_endian();
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 character.
* F_true if a UTF-8 character.
+ * F_false if not a UTF-8 character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
* F_parameter (with error bit) if a parameter is invalid.
*
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 alphabet character.
* F_true if a UTF-8 alphabet character.
+ * F_false if not a UTF-8 alphabet character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 alpha-numeric character.
- * F_true if a UTF-8 alpha-numeric character.
+ * F_true if a UTF-8 alphabet character.
+ * F_false if not a UTF-8 alpha-numeric character.x
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 control character.
* F_true if a UTF-8 control character.
+ * F_false if not a UTF-8 control character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 control picture character.
* F_true if a UTF-8 control picture character.
+ * F_false if not a UTF-8 control picture character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see f_utf_character_is_control_picture()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 character.
* F_true if a UTF-8 character.
+ * F_false if not a UTF-8 character.
*
* @see f_utf_character_is()
* @see f_utf_character_is_valid()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 graph.
* F_true if a UTF-8 graph.
+ * F_false if not a UTF-8 graph.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
* F_maybe (with error bit) if this could be a graph but width is not long enough.
* F_parameter (with error bit) if a parameter is invalid.
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 numeric character.
* F_true if a UTF-8 numeric character.
+ * F_false if not a UTF-8 numeric character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a valid UTF-8 character.
* F_true if a valid UTF-8 character.
+ * F_false if not a valid UTF-8 character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
* F_parameter (with error bit) if a parameter is invalid.
*
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 whitespace.
* F_true if a UTF-8 whitespace.
+ * F_false if not a UTF-8 whitespace.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
* F_maybe (with error bit) if this could be a whitespace but width is not long enough.
* F_parameter (with error bit) if a parameter is invalid.
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 word character.
* F_true if a UTF-8 word character.
+ * F_false if not a UTF-8 word character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 word or dash character.
* F_true if a UTF-8 word or dash character.
+ * F_false if not a UTF-8 word or dash character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 word or dash character.
* F_true if a UTF-8 word or dash character.
+ * F_false if not a UTF-8 word or dash character.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
*
* @see iscntrl()
* Can be anything greater than 0.
*
* @return
- * F_false if not a UTF-8 whitespace.
* F_true if a UTF-8 whitespace.
+ * F_false if not a UTF-8 whitespace.
* F_incomplete_utf (with error bit) if character is an incomplete UTF-8 fragment.
* F_maybe (with error bit) if this could be a whitespace but width is not long enough.
* F_parameter (with error bit) if a parameter is invalid.
* @return
* F_none on success.
* F_data_not if source length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_add_
extern f_return_status fll_execute_arguments_add(const f_string source, const f_string_length length, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if source length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_add_parameter_
extern f_return_status fll_execute_arguments_add_parameter(const f_string prefix, const f_string_length prefix_length, const f_string name, const f_string_length name_length, const f_string value, const f_string_length value_length, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if size is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_add_parameter_set_
extern f_return_status fll_execute_arguments_add_parameter_set(const f_string prefix[], const f_string_length prefix_length[], const f_string name[], const f_string_length name_length[], const f_string value[], const f_string_length value_length[], const f_array_length size, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if size is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_add_set_
extern f_return_status fll_execute_arguments_add_set(const f_string source[], const f_string_length length[], const f_array_length size, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if source length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_dynamic_add_
extern f_return_status fll_execute_arguments_dynamic_add(const f_string_static source, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if source length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_dynamic_add_parameter_
extern f_return_status fll_execute_arguments_dynamic_add_parameter(const f_string_static prefix, const f_string_static name, const f_string_static value, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if source length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_dynamic_add_parameter_set_
extern f_return_status fll_execute_arguments_dynamic_add_parameter_set(const f_string_static prefix[], const f_string_static name[], const f_string_static value[], const f_array_length size, f_string_dynamics *arguments);
* @return
* F_none on success.
* F_data_not if source length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fll_execute_arguments_dynamic_add_set_
extern f_return_status fll_execute_arguments_dynamic_add_set(const f_string_static source[], const f_array_length size, f_string_dynamics *arguments);
*
* @return
* F_none on success.
+ * F_access_denied (with error bit) on access denied for program_path.
+ * F_directory (with error bit) on invalid directory in program_path.
* F_failure (with error bit) if result is non-zero.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_file_found_not (with error bit) if file does not exist at the program_path.
+ * F_file_stat (with error bit) on stat error while checking the program_path.
+ * F_loop (with error bit) on loop error while checking the program_path.
* F_memory_allocation (with error bit) on allocation error.
+ * F_memory_out (with error bit) if out of memory.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_file_found_not (with error bit) if file does not exist at the program_path.
* F_name (with error bit) on path name error.
- * F_memory_out (with error bit) if out of memory.
* F_number_overflow (with error bit) on overflow error.
- * F_directory (with error bit) on invalid directory in program_path.
- * F_access_denied (with error bit) on access denied for program_path.
- * F_loop (with error bit) on loop error while checking the program_path.
- * F_file_stat (with error bit) on stat error while checking the program_path.
+ * F_parameter (with error bit) if a parameter is invalid.
*
* @see execv()
*/
*
* @return
* F_none on success.
+ * F_access_denied (with error bit) on access denied for program_path.
+ * F_directory (with error bit) on invalid directory in program_path.
* F_failure (with error bit) if result is non-zero.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_file_found_not (with error bit) if file does not exist at the program_path.
+ * F_file_stat (with error bit) on stat error while checking the program_path.
+ * F_loop (with error bit) on loop error while checking the program_path.
* F_memory_allocation (with error bit) on allocation error.
+ * F_memory_out (with error bit) if out of memory.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_file_found_not (with error bit) if file does not exist at the program_path.
* F_name (with error bit) on path name error.
- * F_memory_out (with error bit) if out of memory.
* F_number_overflow (with error bit) on overflow error.
- * F_directory (with error bit) on invalid directory in program_path.
- * F_access_denied (with error bit) on access denied for program_path.
- * F_loop (with error bit) on loop error while checking the program_path.
- * F_file_stat (with error bit) on stat error while checking the program_path.
+ * F_parameter (with error bit) if a parameter is invalid.
*
* @see execv()
*/
* @return
* F_none on success.
* F_failure (with error bit) if result is non-zero.
+ * F_file_found_not (with error bit) if file does not exist at the program_path.
* F_fork (with error bit) on fork failure.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_file_found_not (with error bit) if file does not exist at the program_path.
+ * F_parameter (with error bit) if a parameter is invalid.
* F_string_too_large (with error bit) if the combined string (generated from PATH) is too large.
*
* @see execvp()
*
* @return
* F_none on success.
+ * F_access_denied (with error bit) on access denied for program_path.
+ * F_buffer_too_large (with error bit) if paths array (generated from PATH) is too large for further addressing.
+ * F_directory (with error bit) on invalid directory in program_path.
* F_failure (with error bit) if result is non-zero.
+ * F_file_found_not (with error bit) if file does not exist at the program_path.
* F_fork (with error bit) on fork failure.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_loop (with error bit) on loop error while checking the program_path.
* F_memory_allocation (with error bit) on allocation error.
+ * F_memory_out (with error bit) if out of memory.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_file_found_not (with error bit) if file does not exist at the program_path.
* F_name (with error bit) on path name error.
- * F_memory_out (with error bit) if out of memory.
* F_number_overflow (with error bit) on overflow error.
- * F_directory (with error bit) on invalid directory in program_path.
- * F_access_denied (with error bit) on access denied for program_path.
- * F_loop (with error bit) on loop error while checking the program_path.
- * F_buffer_too_large (with error bit) if paths array (generated from PATH) is too large for further addressing.
+ * F_parameter (with error bit) if a parameter is invalid.
* F_string_too_large (with error bit) if the combined string (generated from PATH) is too large.
*
* @see execvpe()
*
* @return
* F_none on success.
- * F_data_not if length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if name_length is 0.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*
* @see fll_execute_arguments_add()
* @see fll_execute_arguments_add_set()
* @return
* F_none on success.
* F_data_not if name_length is 0.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
* F_memory_allocation (with error bit) on allocation error.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_buffer_too_large (with error bit) if arguments array is too large for further allocation.
+ * F_parameter (with error bit) if a parameter is invalid.
*
* @see fll_execute_arguments_add_parameter()
* @see fll_execute_arguments_add_parameter_set()
*
* @return
* F_none on success.
- * F_none_stop on success after reaching stopping point .
* F_none_eos on success after reaching the end of the buffer.
- * F_data_not_stop no data to write due start location being greater than stop location.
- * F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_none_stop on success after reaching stopping point.
* F_data_not_eol if there is no data to write and EOL was reached (@todo: review related code and detemine what this is doing).
+ * F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
* F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
- * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_parameter (with error bit) if a parameter is invalid.
* F_number_overflow (with error bit) if the maximimum buffer size is reached.
+ * F_parameter (with error bit) if a parameter is invalid.
+ * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
*/
#ifndef _di_fll_fss_basic_read_
extern f_return_status fll_fss_basic_read(f_string_dynamic *buffer, f_string_range *location, f_fss_objects *objects, f_fss_contents *contents);
*
* @return
* F_none on success.
- * F_none_stop on success after reaching stopping point .
* F_none_eos on success after reaching the end of the buffer.
- * F_data_not_stop no data to write due start location being greater than stop location.
+ * F_none_stop on success after reaching stopping point.
* F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
* F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
- * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
* F_memory_reallocation (with error bit) on reallocation error.
* F_parameter (with error bit) if a parameter is invalid.
+ * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
*/
#ifndef _di_fll_fss_basic_write_
extern f_return_status fll_fss_basic_write(const f_string_static object, const f_string_statics contents, f_string_dynamic *buffer);
*
* @return
* F_none on success.
- * F_none_stop on success after reaching stopping point .
* F_none_eos on success after reaching the end of the buffer.
- * F_data_not_stop no data to write due start location being greater than stop location.
- * F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_none_stop on success after reaching stopping point.
* F_data_not_eol if there is no data to write and EOL was reached (@todo: review related code and detemine what this is doing).
+ * F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
* F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
- * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
* F_memory_reallocation (with error bit) on reallocation error.
- * F_parameter (with error bit) if a parameter is invalid.
* F_number_overflow (with error bit) if the maximimum buffer size is reached.
+ * F_parameter (with error bit) if a parameter is invalid.
+ * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
*/
#ifndef _di_fll_fss_basic_list_read_
extern f_return_status fll_fss_basic_list_read(f_string_dynamic *buffer, f_string_range *location, f_fss_objects *objects, f_fss_contents *contents);
*
* @return
* F_none on success.
- * F_none_stop on success after reaching stopping point .
* F_none_eos on success after reaching the end of the buffer.
- * F_data_not_stop no data to write due start location being greater than stop location.
+ * F_none_stop on success after reaching stopping point.
* F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
* F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
- * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
* F_memory_reallocation (with error bit) on reallocation error.
* F_parameter (with error bit) if a parameter is invalid.
+ * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
*/
#ifndef _di_fll_fss_basic_list_write_
extern f_return_status fll_fss_basic_list_write(const f_string_static object, const f_string_statics contents, f_string_dynamic *buffer);
*
* @return
* F_none on success.
- * F_none_stop on success after reaching stopping point .
* F_none_eos on success after reaching the end of the buffer.
- * F_data_not_stop no data to write due start location being greater than stop location.
+ * F_none_stop on success after reaching stopping point.
* F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
* F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
- * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
* F_memory_reallocation (with error bit) on reallocation error.
* F_parameter (with error bit) if a parameter is invalid.
+ * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
*/
#ifndef _di_fll_fss_extended_write_
extern f_return_status fll_fss_extended_write(const f_string_static object, const f_string_statics contents, f_string_dynamic *buffer);
*
* @return
* F_none on success (both valid object and valid content found with start location is at end of content).
- * F_none_stop on success after reaching stopping point (both valid object and valid content found with start location is at stop point).
* F_none_eos on success after reaching the end of the buffer (both valid object and valid content found with start location is at end of buffer).
- * F_data_not_stop no data to write due start location being greater than stop location.
- * F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_none_stop on success after reaching stopping point (both valid object and valid content found with start location is at stop point).
* F_data_not_eol if there is no data to write and EOL was reached (@todo: review related code and detemine what this is doing).
- * FL_fss_found_object_content_not on success and object was found but no content was found (start location is at end of object).
+ * F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
+ * F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
+ * F_incomplete_utf_eos (with error bit) if the end of buffer is reached before the complete UTF-8 character can be processed.
+ * F_incomplete_utf_stop (with error bit) if the stop location is reached before the complete UTF-8 character can be processed.
+ * F_memory_reallocation (with error bit) on reallocation error.
+ * F_number_overflow (with error bit) if the maximimum buffer size is reached.
+ * F_parameter (with error bit) if a parameter is invalid.
* F_unterminated_eos (with error bit) if end of buffer is reached before a closing bracket is found (object was found).
- * F_unterminated_stop (with error bit) if stop location is reached before a closing bracket is found (object was found).
* F_unterminated_nest_eos (with error bit) if end of buffer is reached while inside a nested list before a closing bracket is found (object was found).
* F_unterminated_nest_stop (with error bit) if stop location is reached while inside a nested list before a closing bracket is found (object was found).
- * F_incomplete_utf_stop (with error bit) if the stop location is reached before the complete UTF-8 character can be processed.
- * F_incomplete_utf_eos (with error bit) if the end of buffer is reached before the complete UTF-8 character can be processed.
- * F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
+ * F_unterminated_stop (with error bit) if stop location is reached before a closing bracket is found (object was found).
* F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
- * F_memory_reallocation (with error bit) on reallocation error.
- * F_parameter (with error bit) if a parameter is invalid.
- * F_number_overflow (with error bit) if the maximimum buffer size is reached.
+ * FL_fss_found_object_content_not on success and object was found but no content was found (start location is at end of object).
*/
#ifndef _di_fll_fss_extended_list_read_
extern f_return_status fll_fss_extended_list_read(f_string_dynamic *buffer, f_string_range *location, f_fss_nest *nest);
*
* @return
* F_none on success.
- * F_none_stop on success after reaching stopping point .
* F_none_eos on success after reaching the end of the buffer.
- * F_data_not_stop no data to write due start location being greater than stop location.
+ * F_none_stop on success after reaching stopping point.
* F_data_not_eos no data to write due start location being greater than or equal to buffer size.
+ * F_data_not_stop no data to write due start location being greater than stop location.
* F_incomplete_utf (with error bit) is returned on failure to read/process a UTF-8 character due to the character being potentially incomplete.
- * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
* F_memory_reallocation (with error bit) on reallocation error.
* F_parameter (with error bit) if a parameter is invalid.
+ * F_utf (with error bit) is returned on failure to read/process a UTF-8 character.
*/
#ifndef _di_fll_fss_extended_list_write_
//extern f_return_status fll_fss_extended_list_write(const f_string_static object, const f_string_statics contents, f_string_dynamic *buffer);
#endif // _di_level_1_parameter_checking_
f_status status = F_none;
- f_string_length length = strlen(string);
+ const f_string_length length = strlen(string);
if (length == 0) {
return F_data_not;
if (string == 0) return F_status_set_error(F_parameter);
#endif // _di_level_2_parameter_checking_
- f_status unmasked_code = F_status_set_fine(code);
+ const f_status unmasked_code = F_status_set_fine(code);
switch (unmasked_code) {
#ifndef _di_fll_fss_status_error_
extern f_return_status fll_fss_status_from_string(const f_string string, f_status *code);
#endif // _di_fll_fss_status_to_string_
+/**
+ * Convert code codes to their string equivalents.
+ *
+ * @param code
+ * The code to process.
+ * @param string
+ * The code name that represents the given code.
+ *
+ * @return
+ * F_none on success.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fl_status_to_string().
+ *
+ * @see fl_status_to_string()
+ */
#ifndef _di_fll_fss_status_to_string_
- /**
- * Convert code codes to their string equivalents.
- */
extern f_return_status fll_fss_status_to_string(const f_status code, f_string *string);
#endif // _di_fll_status_to_string_
+/**
+ * Returns true or false depending on whether the given status code has the error bit set.
+ *
+ * @param code
+ * The code to process.
+ *
+ * @return
+ * F_true if status has the error bit set.
+ * F_false otherwise.
+ */
#ifndef _di_fll_fss_status_is_error_
- /**
- * Returns true or false depending on whether the standard context of the code code represents an code.
- * Keep in mind that many of the code codes are context-specific and may be reported as an code here when it is in fact not an code.
- */
extern f_return_status fll_fss_status_is_error(const f_status code);
#endif // _di_fll_fss_status_is_error_
+/**
+ * Returns true or false depending on whether the given status code has the warning bit set.
+ *
+ * @param code
+ * The code to process.
+ *
+ * @return
+ * F_true if status has the warning bit set.
+ * F_false otherwise.
+ */
#ifndef _di_fll_fss_status_is_warning_
- /**
- * Returns true or false depending on whether the standard context of the code code represents a warning.
- * Keep in mind that many of the code codes are context-specific and may be reported as a warning here when it is in fact not a warning.
- */
extern f_return_status fll_fss_status_is_warning(const f_status code);
#endif // _di_fll_fss_status_is_warning_
+/**
+ * Returns true or false depending on whether the given status code has neither the error bit nor the warning bit set.
+ *
+ * @param code
+ * The code to process.
+ *
+ * @return
+ * F_true if status does not have the error bit nor warning bit set.
+ * F_false otherwise.
+ */
#ifndef _di_fll_fss_status_is_fine_
- /**
- * Returns true or false depending on whether the standard context of the code code represents an normal return status and not an code.
- * Keep in mind that many of the code codes are context-specific and may be reported as "fine" here when it is in fact not fine.
- */
extern f_return_status fll_fss_status_is_fine(const f_status code);
#endif // _di_fll_fss_status_is_fine_
#ifndef _di_fll_program_print_help_header_
f_return_status fll_program_print_help_header(const fl_color_context context, const f_string name, const f_string version) {
+ f_status status = F_none;
+
printf("%c", f_string_eol[0]);
- fl_color_print(f_type_output, context.title, context.reset, " %s", name);
+ status = fl_color_print(f_type_output, context.title, context.reset, " %s", name);
+ if (F_status_is_error(status)) return status;
printf("%c", f_string_eol[0]);
- fl_color_print(f_type_output, context.notable, context.reset, " Version %s", version);
+ status = fl_color_print(f_type_output, context.notable, context.reset, " Version %s", version);
+ if (F_status_is_error(status)) return status;
printf("%c%c", f_string_eol[0], f_string_eol[0]);
- fl_color_print(f_type_output, context.important, context.reset, " Available Options: ");
+ status = fl_color_print(f_type_output, context.important, context.reset, " Available Options: ");
+ if (F_status_is_error(status)) return status;
return F_none;
}
#ifndef _di_fll_program_print_help_option_
f_return_status fll_program_print_help_option(const fl_color_context context, const f_string option_short, const f_string option_long, const f_string symbol_short, const f_string symbol_long, const f_string description) {
+ f_status status = F_none;
+
printf("%c", f_string_eol[0]);
printf(" %s", symbol_short);
- fl_color_print(f_type_output, context.standout, context.reset, option_short);
+ status = fl_color_print(f_type_output, context.standout, context.reset, option_short);
+ if (F_status_is_error(status)) return status;
printf(", %s", symbol_long);
- fl_color_print(f_type_output, context.standout, context.reset, option_long);
+ status = fl_color_print(f_type_output, context.standout, context.reset, option_long);
+ if (F_status_is_error(status)) return status;
+
printf(" %s", description);
return F_none;
#ifndef _di_fll_program_print_help_option_long_
f_return_status fll_program_print_help_option_long(const fl_color_context context, const f_string option_long, const f_string symbol_long, const f_string description) {
+ f_status status = F_none;
+
printf("%c", f_string_eol[0]);
printf(" %s", symbol_long);
- fl_color_print(f_type_output, context.standout, context.reset, option_long);
+ status = fl_color_print(f_type_output, context.standout, context.reset, option_long);
+ if (F_status_is_error(status)) return status;
+
printf(" %s", description);
return F_none;
#ifndef _di_fll_program_print_help_usage_
f_return_status fll_program_print_help_usage(const fl_color_context context, const f_string name, const f_string parameters) {
+ f_status status = F_none;
+
printf("%c%c", f_string_eol[0], f_string_eol[0]);
- fl_color_print(f_type_output, context.important, context.reset, " Usage:");
+ status = fl_color_print(f_type_output, context.important, context.reset, " Usage:");
+ if (F_status_is_error(status)) return status;
printf("%c ", f_string_eol[0]);
- fl_color_print(f_type_output, context.standout, context.reset, name);
+ status = fl_color_print(f_type_output, context.standout, context.reset, name);
+ if (F_status_is_error(status)) return status;
printf(" ");
- fl_color_print(f_type_output, context.notable, context.reset, "[");
+ status = fl_color_print(f_type_output, context.notable, context.reset, "[");
+ if (F_status_is_error(status)) return status;
printf(" options ");
- fl_color_print(f_type_output, context.notable, context.reset, "]");
+ status = fl_color_print(f_type_output, context.notable, context.reset, "]");
+ if (F_status_is_error(status)) return status;
if (parameters[0] != '\0') {
printf(" ");
- fl_color_print(f_type_output, context.notable, context.reset, "[");
+ status = fl_color_print(f_type_output, context.notable, context.reset, "[");
+ if (F_status_is_error(status)) return status;
printf(" %s ", parameters);
- fl_color_print(f_type_output, context.notable, context.reset, "]");
+ status = fl_color_print(f_type_output, context.notable, context.reset, "]");
+ if (F_status_is_error(status)) return status;
}
printf("%c%c", f_string_eol[0], f_string_eol[0]);
f_status status = F_none;
status = f_console_parameter_process(arguments, parameters, remaining);
-
if (F_status_is_error(status)) return status;
f_console_parameter_id decision = choices.id[2];
f_status status = F_none;
f_string_length length = 0;
- f_string_length start = destination->used;
+ const f_string_length start = destination->used;
for (f_string_length i = 0; i < additional.used; i++) {
length = strnlen(argv[additional.array[i]], f_console_length_size);
f_string_dynamic ripped = f_string_dynamic_initialize;
status = fl_string_append(argv[additional.array[i]], length, &ripped);
-
if (F_status_is_error(status)) return status;
if (status == F_data_not) {
else {
if (destination->used >= destination->size) {
f_macro_string_dynamics_resize(status, (*destination), destination->size + f_console_default_allocation_step);
-
if (F_status_is_error(status)) return status;
}
f_status status = F_none;
f_string_length length = 0;
- f_string_length start = destination->used;
+ const f_string_length start = destination->used;
for (f_string_length i = 0; i < additional.used; i++) {
length = strnlen(argv[additional.array[i]], f_console_length_size);
if (length > 0) {
status = fl_string_mash(glue, glue_length, argv[additional.array[i]], length, destination);
-
if (F_status_is_error(status)) return F_status_set_error(F_string_too_large);
}
} // for
f_status status = F_none;
f_string_length length = 0;
- f_string_length start = destination->used;
+ const f_string_length start = destination->used;
for (f_string_length i = 0; i < additional.used; i++) {
length = strnlen(argv[additional.array[i]], f_console_length_size);
f_string_dynamic ripped = f_string_dynamic_initialize;
status = fl_string_rip(argv[additional.array[i]], length, &ripped);
-
if (F_status_is_error(status)) return status;
if (status == F_data_not) {
else {
if (destination->used >= destination->size) {
f_macro_string_dynamics_resize(status, (*destination), destination->size + f_console_default_allocation_step);
-
if (F_status_is_error(status)) return status;
}
f_status status = F_none;
f_string_length length = 0;
- f_string_length start = destination->used;
+ const f_string_length start = destination->used;
f_string_dynamic ripped = f_string_dynamic_initialize;
for (f_string_length i = 0; i < additional.used; i++) {
*
* @return
* F_none on success.
+ *
+ * Errors from (with error bit): fl_color_print().
+ *
+ * @param fl_color_print()
*/
#ifndef _di_fll_program_print_help_header_
extern f_return_status fll_program_print_help_header(const fl_color_context context, const f_string name, const f_string version);
*
* @return
* F_none on success.
+ *
+ * Errors from (with error bit): fl_color_print().
+ *
+ * @param fl_color_print()
*/
#ifndef _di_fll_program_print_help_option_
extern f_return_status fll_program_print_help_option(const fl_color_context context, const f_string option_short, const f_string option_long, const f_string symbol_short, const f_string symbol_long, const f_string description);
*
* @return
* F_none on success.
+ *
+ * Errors from (with error bit): fl_color_print().
+ *
+ * @param fl_color_print()
*/
#ifndef _di_fll_program_print_help_option_long_
extern f_return_status fll_program_print_help_option_long(const fl_color_context context, const f_string option_long, const f_string symbol_long, const f_string description);
*
* @return
* F_none on success.
+ *
+ * Errors from (with error bit): fl_color_print().
+ *
+ * @param fl_color_print()
*/
#ifndef _di_fll_program_print_help_option_other_
extern f_return_status fll_program_print_help_option_other(const fl_color_context context, const f_string option_other, const f_string description);
*
* @return
* F_none on success.
+ *
+ * Errors from (with error bit): fl_color_print().
+ *
+ * @param fl_color_print()
*/
#ifndef _di_fll_program_print_help_usage_
extern f_return_status fll_program_print_help_usage(const fl_color_context context, const f_string name, const f_string parameters);
* @return
* F_none on success.
* F_data_not if "additional" parameters were expected but not found.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_reallocation (with error bit) on memory reallocation error.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): f_console_parameter_prioritize_left().
+ * Errors from (with error bit): f_console_parameter_prioritize_right().
+ * Errors from (with error bit): f_console_parameter_process().
+ * Errors from (with error bit): fl_color_load_context().
+ *
+ * @see f_console_parameter_prioritize_left()
+ * @see f_console_parameter_prioritize_right()
+ * @see f_console_parameter_process()
+ * @see fl_color_load_context()
*/
#ifndef _di_fll_program_parameter_process_
extern f_return_status fll_program_parameter_process(const f_console_arguments arguments, f_console_parameters parameters, const f_console_parameter_ids choices, const bool right, f_string_lengths *remaining, fl_color_context *context);
* @return
* F_none on success.
* F_data_not if "additional" parameters were expected but not found.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_reallocation (with error bit) on memory reallocation error.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): f_console_parameter_prioritize_left().
+ * Errors from (with error bit): f_console_parameter_prioritize_right().
+ * Errors from (with error bit): f_console_parameter_process().
+ * Errors from (with error bit): fl_color_load_context().
+ *
+ * @see f_console_parameter_prioritize_left()
+ * @see f_console_parameter_prioritize_right()
+ * @see f_console_parameter_process()
+ * @see fl_color_load_context()
*/
#ifndef _di_fll_program_parameter_process_quietly_
extern f_return_status fll_program_parameter_process_quietly(const f_console_arguments arguments, f_console_parameters parameters, const f_console_parameter_ids choices, const bool right, f_string_lengths *remaining, fl_color_context *context);
* @return
* F_none on success.
* F_data_not if nothing to rip, no allocations or reallocations are performed.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_allocation (with error bit) on memory allocation error.
* F_memory_reallocation (with error bit) on memory reallocation error.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fl_string_append().
*
* @see fl_string_append()
*/
* @return
* F_none on success.
* F_data_not if nothing to rip, no allocations or reallocations are performed.
- * F_string_too_large (with error bit) if the combined string is too large.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_allocation (with error bit) on memory allocation error.
* F_memory_reallocation (with error bit) on memory reallocation error.
+ * F_parameter (with error bit) if a parameter is invalid.
+ * F_string_too_large (with error bit) if the combined string is too large.
+ *
+ * Errors from (with error bit): fl_string_mash().
+ *
+ * @see fl_string_mash()
*/
#ifndef _di_fll_program_parameter_additional_mash_
extern f_return_status fll_program_parameter_additional_mash(const f_string glue, const f_string_length glue_length, const f_string *argv, const f_string_lengths additional, f_string_dynamic *destination);
* @return
* F_none on success.
* F_data_not if nothing to rip, no allocations or reallocations are performed.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_allocation (with error bit) on memory allocation error.
* F_memory_reallocation (with error bit) on memory reallocation error.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fl_string_rip().
*
* @see fl_string_rip()
*/
* @return
* F_none on success.
* F_data_not if nothing to rip, no allocations or reallocations are performed.
- * F_string_too_large (with error bit) if the combined string is too large.
- * F_parameter (with error bit) if a parameter is invalid.
* F_memory_allocation (with error bit) on memory allocation error.
* F_memory_reallocation (with error bit) on memory reallocation error.
+ * F_parameter (with error bit) if a parameter is invalid.
+ * F_string_too_large (with error bit) if the combined string is too large.
+ *
+ * Errors from (with error bit): fl_string_dynamic_mash().
+ * Errors from (with error bit): fl_string_rip().
+ *
+ * @see fl_string_dynamic_mash()
+ * @see fl_string_rip()
*/
#ifndef _di_fll_program_parameter_additional_rip_mash_
extern f_return_status fll_program_parameter_additional_rip_mash(const f_string glue, const f_string_length glue_length, const f_string *argv, const f_string_lengths additional, f_string_dynamic *destination);
#endif // _di_level_1_parameter_checking_
f_status status = F_none;
- f_string_length length = strlen(string);
+ const f_string_length length = strlen(string);
if (length == 0) {
return F_data_not;
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see byte_dump_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fake_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fake_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_copy_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_skeleton_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_execute_process_script_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_get_file_name_without_extension_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_libraries_script_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_library_shared_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_library_static_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_load_setting_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_load_environment_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_load_stage_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_objects_static_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_operate_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_programs_script_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_program_shared_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_build_program_static_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_clean_operate_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_path_generate_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_path_generate_string_dynamic_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_process_console_parameters_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_validate_parameter_directories_
* Set to F_true to print the fallback error message for unknown errors.
*
* @return
- * F_false is returned on successful print of known errors.
* F_true is returned if the status code has no print message.
+ * F_false is returned on successful print of known errors.
*/
#ifndef _di_fake_print_error_file_
extern bool fake_print_error_file(const fl_color_context context, const uint8_t verbosity, const f_status status, const f_string function, const f_string name, const f_string operation, const bool is_file, const bool fallback) f_gcc_attribute_visibility_internal;
* Set to F_true to print the fallback error message for unknown errors.
*
* @return
- * F_false is returned on successful print of known errors.
* F_true is returned if the status code has no print message.
+ * F_false is returned on successful print of known errors.
*/
#ifndef _di_fake_print_error_operation_
extern bool fake_print_error_operation(const fl_color_context context, const uint8_t verbosity, const f_status status, const f_string function, const f_string operation, const f_string how, const f_string source, const f_string destination, const bool fallback) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_fake_skeleton_operate_
*
* @return
* F_none on success.
+ *
* Status codes (with warning bit) are returned on certain problems that can be ignored.
* Status codes (with error bit) are returned on any problem.
*/
*
* @return
* F_none on success.
+ *
* Status codes (with warning bit) are returned on certain problems that can be ignored.
* Status codes (with error bit) are returned on any problem.
*/
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see firewall_delete_data()
#endif // _di_firewall_main_
/**
- * Deallocate data.
+ * De-allocate data.
*
* Be sure to call this after executing firewall_main().
*
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see firewall_main()
return status;
}
-f_return_status firewall_process_rules(f_string_range *input, firewall_local_data *local, firewall_data *data) {
+f_return_status firewall_process_rules(f_string_range *range, firewall_local_data *local, firewall_data *data) {
f_status status = F_none;
- status = fll_fss_extended_read(&local->buffer, input, &local->rule_objects, &local->rule_contents);
+ status = fll_fss_extended_read(&local->buffer, range, &local->rule_objects, &local->rule_contents);
if (F_status_is_not_error(status)) {
status = firewall_perform_commands(*local, *data);
/**
* Perform commands.
+ *
+ * @param local
+ * Local firewall settings.
+ * @param data
+ * Firewall data.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
f_return_status firewall_perform_commands(const firewall_local_data local, const firewall_data data) f_gcc_attribute_visibility_internal;
/**
* Create custom chains.
+ *
+ * @param reserved
+ * firewall chains.
+ * @param local
+ * Local firewall settings.
+ * @param data
+ * Firewall data.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
f_return_status firewall_create_custom_chains(firewall_reserved_chains *reserved, firewall_local_data *local, firewall_data *data) f_gcc_attribute_visibility_internal;
/**
* Deallocate chains.
+ *
+ * @param data
+ * Firewall data.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
f_return_status firewall_delete_chains(const firewall_data data) f_gcc_attribute_visibility_internal;
/**
* Lock the firewall.
+ *
+ * @param data
+ * Firewall data.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
f_return_status firewall_default_lock(const firewall_data data) f_gcc_attribute_visibility_internal;
/**
* Buffer firewall rules.
+ *
+ * @param filename
+ * File name to read the rules from.
+ * @param optional
+ * TRUE if this files is optional.
+ * FALSE otherwise (more are errors returned when not optional).
+ * @param local
+ * Local firewall settings.
+ * @param data
+ * Firewall data.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
f_return_status firewall_buffer_rules(const f_string filename, const bool optional, firewall_local_data *local, firewall_data *data) f_gcc_attribute_visibility_internal;
/**
* Process buffered rules.
+ *
+ * @param range
+ * The current position within the buffer and the stop point.
+ * @param local
+ * Local firewall settings.
+ * @param data
+ * Firewall data.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
-f_return_status firewall_process_rules(f_string_range *input, firewall_local_data *local, firewall_data *data) f_gcc_attribute_visibility_internal;
+f_return_status firewall_process_rules(f_string_range *range, firewall_local_data *local, firewall_data *data) f_gcc_attribute_visibility_internal;
/**
* Delete allocated data.
+ *
+ * @param local
+ * Local firewall settings.
+ *
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
*/
f_return_status firewall_delete_local_data(firewall_local_data *local) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_basic_list_read_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_basic_list_read_main()
*
* @return
* F_none on success.
- * F_parameter (with error bit) if a parameter is invalid.
*/
#ifndef _di_fss_basic_list_read_main_preprocess_depth_
extern f_return_status fss_basic_list_read_main_preprocess_depth(const f_console_arguments arguments, const fss_basic_list_read_data data, fss_basic_list_read_depths *depths) f_gcc_attribute_visibility_internal;
* @param depths
* The processed depth parameters.
*
+ * @return
+ * F_none on success.
+ *
+ * Status codes (with error bit) are returned on any problem.
+ *
* @see fss_basic_list_read_main_preprocess_depth()
*/
#ifndef _di_fss_basic_list_read_main_process_file_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_basic_list_write_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_basic_list_write_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_basic_read_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_basic_read_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_extended_list_read_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_extended_list_read_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_extended_read_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_extended_read_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_extended_write_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_extended_write_main()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_status_code_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see fss_status_code_main()
return status;
}
- f_status code = (f_status) number;
+ const f_status code = (f_status) number;
f_string string = 0;
status = fll_fss_status_to_string(code, &string);
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string starts wth a null (length is 0).
+ * F_data_not if string starts wth a null (length is 0).
* F_parameter (with error bit) if a parameter is invalid.
* F_number (with error bit) if parameter is not a number.
* F_number_negative (with error bit) on negative value.
* F_number_overflow (with error bit) on integer overflow.
* F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
+ *
+ * Errors from (with error bit): fss_status_code_convert_number().
+ *
+ * @see fss_status_code_convert_number()
*/
#ifndef _di_fss_status_code_process_check_
extern f_return_status fss_status_code_process_check(const fss_status_code_data data, const f_string value) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string is empty.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if string is empty.
+ *
+ * Errors from (with error bit): fl_console_parameter_to_number_unsigned().
+ * Errors from (with error bit): fll_fss_status_from_string().
+ *
+ * @see fl_console_parameter_to_number_unsigned()
+ * @see fll_fss_status_from_string()
*/
#ifndef _di_fss_status_code_process_number_
extern f_return_status fss_status_code_process_number(const fss_status_code_data data, const f_string value) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string starts wth a null (length is 0).
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if string starts wth a null (length is 0).
+ * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
* F_number (with error bit) if parameter is not a number.
* F_number_negative (with error bit) on negative value.
* F_number_overflow (with error bit) on integer overflow.
- * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fll_fss_status_from_string().
+ * Errors from (with error bit): fss_status_code_convert_number().
+ *
+ * @see fll_fss_status_from_string()
+ * @see fss_status_code_convert_number()
*/
#ifndef _di_fss_status_code_process_normal_
extern f_return_status fss_status_code_process_normal(const fss_status_code_data data, const f_string value) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string starts wth a null (length is 0).
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if string starts wth a null (length is 0).
+ * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
* F_number (with error bit) if parameter is not a number.
* F_number_negative (with error bit) on negative value.
* F_number_overflow (with error bit) on integer overflow.
- * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fl_console_parameter_to_number_unsigned().
+ *
+ * @see fl_console_parameter_to_number_unsigned()
*/
#ifndef _di_fss_status_code_convert_number_
extern f_return_status fss_status_code_convert_number(const fss_status_code_data data, const f_string value, f_number_unsigned *number) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_init_main_
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*/
#ifndef _di_init_main_
f_return_status init_process_main_rule(const init_data data, f_string_dynamic *buffer, init_setting *setting) f_gcc_attribute_visibility_internal;
#endif // _di_init_process_main_rule_
*/
+
#ifdef __cplusplus
} // extern "C"
#endif
return status;
}
- f_status code = (f_status) number;
+ const f_status code = (f_status) number;
f_string string = 0;
status = fl_status_to_string(code, &string);
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string starts wth a null (length is 0).
+ * F_data_not if string starts wth a null (length is 0).
* F_parameter (with error bit) if a parameter is invalid.
* F_number (with error bit) if parameter is not a number.
* F_number_negative (with error bit) on negative value.
* F_number_overflow (with error bit) on integer overflow.
* F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
+ *
+ * Errors from (with error bit): fss_status_code_convert_number().
+ *
+ * @see fss_status_code_convert_number()
*/
#ifndef _di_status_code_process_check_
extern f_return_status status_code_process_check(const status_code_data data, const f_string value) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string is empty.
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if string is empty.
+ *
+ * Errors from (with error bit): fl_console_parameter_to_number_unsigned().
+ * Errors from (with error bit): fll_fss_status_from_string().
+ *
+ * @see fl_console_parameter_to_number_unsigned()
+ * @see fll_fss_status_from_string()
*/
#ifndef _di_status_code_process_number_
extern f_return_status status_code_process_number(const status_code_data data, const f_string value) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string starts wth a null (length is 0).
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if string starts wth a null (length is 0).
+ * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
* F_number (with error bit) if parameter is not a number.
* F_number_negative (with error bit) on negative value.
* F_number_overflow (with error bit) on integer overflow.
- * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fll_fss_status_from_string().
+ * Errors from (with error bit): fss_status_code_convert_number().
+ *
+ * @see fll_fss_status_from_string()
+ * @see fss_status_code_convert_number()
*/
#ifndef _di_status_code_process_normal_
extern f_return_status status_code_process_normal(const status_code_data data, const f_string value) f_gcc_attribute_visibility_internal;
*
* @return
* F_none on success.
- * F_data_not (with error bit) if string starts wth a null (length is 0).
- * F_parameter (with error bit) if a parameter is invalid.
+ * F_data_not if string starts wth a null (length is 0).
+ * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
* F_number (with error bit) if parameter is not a number.
* F_number_negative (with error bit) on negative value.
* F_number_overflow (with error bit) on integer overflow.
- * F_incomplete_utf (with error bit) if an incomplete UTF-8 fragment is found.
+ * F_parameter (with error bit) if a parameter is invalid.
+ *
+ * Errors from (with error bit): fl_console_parameter_to_number_unsigned().
+ *
+ * @see fl_console_parameter_to_number_unsigned()
*/
#ifndef _di_status_code_convert_number_
extern f_return_status status_code_convert_number(const status_code_data data, const f_string value, f_number_unsigned *number) f_gcc_attribute_visibility_internal;
if (data->parameters[status_code_parameter_help].result == f_console_result_found) {
status_code_print_help(data->context);
status_code_delete_data(data);
+
return F_none;
}
else if (data->parameters[status_code_parameter_version].result == f_console_result_found) {
fll_program_print_version(status_code_version);
status_code_delete_data(data);
+
return F_none;
}
#ifndef _di_status_code_delete_data_
f_return_status status_code_delete_data(status_code_data *data) {
- f_status status = F_none;
f_string_length i = 0;
while (i < status_code_total_parameters) {
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see status_code_delete_data()
*
* @return
* F_none on success.
+ *
* Status codes (with error bit) are returned on any problem.
*
* @see status_code_main()