<commit_before># config.yml
#
# LEGAL NOTICE
# -------------
# 
# OSS Discovery is a tool that finds installed open source software.
#    Copyright (C) 2007 OpenLogic, Inc.
#  
# OSS Discovery is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License version 3 as 
# published by the Free Software Foundation.  
#  
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License version 3 (discovery2-client/license/OSSDiscoveryLicense.txt) 
# for more details.
#  
# You should have received a copy of the GNU Affero General Public License along with this program.  
# If not, see http://www.gnu.org/licenses/
#  
# You can learn more about OSSDiscovery or contact the team at www.ossdiscovery.com.
# You can contact OpenLogic at <EMAIL>.
#
#--------------------------------------------------------------------------------------------------
# 
# The properties defined in this file, can, for the most part, be organized into some kind of 
# topical group.  'General' is the catch-all group for properties that don't really lend themselves
# to being organized any better than that.  The 'General' group appears first, and after that all
# of the remaining properties are organized alphabetically by their group.  This 'group' has no 
# bearing whatsoever on how the properties get used, it just serves as a way to keep the list of
# properties in this file in some sane, organized manner.


################################################################################
##### General properties

#--------------------------------------------------------------------------------------
# Set to true to allow plugins found in the 'plugins' directory to be loaded.
# For example, Open Source Census integration is provided as a plugin, and 
# therefore is only available if the following value is 'true'.
load_plugins: true

#--------------------------------------------------------------------------------------
# what directory to walk if no other directories are specified in the inclusion filter
# if --path command line parameter is given, that path will override this one
# if no --path is given and there are no filters in the inclusion_filter list, then
# this path will be used to scan

# The default directory to scan is whatever the path is up to the first \ or / in the
# current working directory.  This results in / for unix-based environments and c:\ 
# for windows (or whatever drive discovery is running from)
directory_to_scan: <% ENV['OSSDISCOVERY_HOME'].match(/^.*?[\\\/]/)[0] %>

#--------------------------------------------------------------------------------------
# which default filter set to use
generic_filters: /filters/filters-list.rb

#--------------------------------------------------------------------------------------
# show permission denied directories or files
show_permission_denied: false

#--------------------------------------------------------------------------------------
# decide whether to scan symlink'd files and directories 
# by default it's true because symlinks are so commonly used
follow_symlinks: true
# maximum number of indirections to follow through symlinks
symlink_depth: 5

#--------------------------------------------------------------------------------------
# When a scan is performed on a production machine, the person performing the scan does 
# not want the scanner to take all system resources. Below are the parameters that will 
# throttle the max amount of system resources that the scanner will consume.
#
# Every x number of files, pause for y number of seconds. 
throttle_number_of_files: 300
throttle_seconds_to_pause: 2.5
# The defaults are 300 and 2 respectively. Here's how these defaults were arrived at.
# A sample scan on my machine ran in 15 minutes, and showed 451499 total files encountered.
# The above defaults add just over an hour of wait time which is roughly 4x the original 
# throttling-disabled run time; a few of us decided 4x sounded good enough for a default on irc.


################################################################################
##### Logging properties

# Arg that will be passed to Logger.new().  From the rdoc: This is a filename (String) or IO object (typically STDOUT, STDERR, or an open file).
log_device: <% File.expand_path( File.join( ENV['OSSDISCOVERY_HOME'], 'log', 'discovery.log')) %>

# Valid options are: FATAL, ERROR, WARN, INFO, DEBUG - 'WARN' is the recommended setting for 
# productions runs, it shouldn't give you too much output, but you also won't miss importatnt warnings.
log_level: <% Logger::INFO %>


################################################################################
##### Debugging/Developer-oriented properties

# Set this property to true if you'd like an auditable list of all the files of interested that triggered successful 
# matches to be printed out.  If it is set to true, the human readable results files will contain data that will be
# useful for a rule writer in terms of auditing all the key files that were matched against during the discovery run.
produce_match_audit_records: false


################################################################################
##### Output properties

#--------------------------------------------------------------------------------------
# where the results should go by default, both of these may be overridden by command
# line options.

# whether to include location (paths) in the machine scan results file.
include_paths: false

# machine readable results file
machine_results: scanresults-census.txt  

# whether or not to show the machine scan results after the scan is complete
preview_results: false

# human readable
results: STDOUT


################################################################################
##### Rules properties

#--------------------------------------------------------------------------------------
# where to pick up the default scan rules
rules_openlogic: <% File.expand_path(File.join( ENV['OSSDISCOVERY_HOME'], 'lib','rules', 'openlogic')) %>
rules_drop_ins: <% File.expand_path(File.join( ENV['OSSDISCOVERY_HOME'], 'lib','rules', 'drop_ins')) %>

rules_dirs: <% ['rules_openlogic', 'rules_drop_ins'] %>
# If you only want to run the tool with your custom written rules, you would put them in the 'drop_ins' dir and change the previous line to:
#   rules_dirs: <% ['rules_drop_ins'] %>


################################################################################
##### Server properties

#--------------------------------------------------------------------------------------
# these items describe where and how scan results are sent
# 
send_results: false                                             # default to not send, can be overridden on command line

# Note that destination_server_url and server_base_url can neither be localhost urls if proxying is being 
# used or tested.  You can't proxy a localhost URL.
#destination_server_url: http://localhost:3000/scans/scanpost   # change to OL disco production server
#destination_server_url: https://192.168.10.11/service/scans/scanpost  # dummy dev location
destination_server_url: https://www.osscensus.org/service/scans/scanpost  # osscensus official

# in some cases, ie: just can't get around a proxy configuration or protocol to programmatically submit results,
# it's still possible to submit results by going to this URL in your browser and uploading the machine results file
upload_url: https://www.osscensus.org/service/upload  # manually upload scanresults-census.txt, use this URL

# WARNING - osscensus production will not accept scans unless this is false
override_https: false

# Configurable options for scan rules updating.  TODO findme: clean this up, combining where possible with the 'destination_server_url' 
# for delivering results above. Note: On hold until the server-side of things has been firmed up.

# TODO - IMPORTANT: This Default/Standard URL needs to point to OpenLogic's Disco 2 server when this goes to production
# localhost URLs won't work if testing or using a proxy - this URL must be changed the real server URL
#server_base_url: http://192.168.10.11/service  # dummy dev location
server_base_url: https://www.osscensus.org/service  # osscensus official
rules_files_url_path: rules_files.xml
rules_file_base_url: https://www.osscensus.org 
# When you navigate in a browser to 'server_base_url + rules_files_url_path' (eg... http://localhost:3000/rules_files.xml), 
# you should see an xml file that specifies all the scan rules files available on the server.

# username password of server submission, should be nil if no authentication is in use
username: nil
password: nil 

# IMPORTANT: proxy data needs to be nil'd out if no proxy is used. 
# Any proxy value not specified (used) is required to be nil

proxy_host: nil     # example: "192.168.10.211"
proxy_port: nil     # 4545 # 3128
proxy_user: nil     # example: corpusername
proxy_password: nil # example: <PASSWORD>

update_rules: false
update_rules_and_do_scan: false

# geography - used when user wants to submit an anonymous scan to the census
# geography is the minimal data required for the submission
#   geography should be one of the following values:
# 
#  This value can be overridden on the command line with the --geography
#
# in order to see the numeric value to supply for this property, run ossdiscovery --list-geos
# 9999 is an invalid geography, it must be overridden to submit a scan anonymously

geography: 9999

#--------------------------------------------------------------------------------------
# Census code is how the census groups multiple machines together for unified reporting purposes.
# In other words, you can see an aggregated report for all machines using the same census code.
#
# If you already have a census code from registering with the census, you can
# insert the value below or pass it on the command-line.
<commit_msg>added proxy_ntlm_domain in case it's something other than ""<commit_after># config.yml
#
# LEGAL NOTICE
# -------------
# 
# OSS Discovery is a tool that finds installed open source software.
#    Copyright (C) 2007 OpenLogic, Inc.
#  
# OSS Discovery is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License version 3 as 
# published by the Free Software Foundation.  
#  
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License version 3 (discovery2-client/license/OSSDiscoveryLicense.txt) 
# for more details.
#  
# You should have received a copy of the GNU Affero General Public License along with this program.  
# If not, see http://www.gnu.org/licenses/
#  
# You can learn more about OSSDiscovery or contact the team at www.ossdiscovery.com.
# You can contact OpenLogic at <EMAIL>.
#
#--------------------------------------------------------------------------------------------------
# 
# The properties defined in this file, can, for the most part, be organized into some kind of 
# topical group.  'General' is the catch-all group for properties that don't really lend themselves
# to being organized any better than that.  The 'General' group appears first, and after that all
# of the remaining properties are organized alphabetically by their group.  This 'group' has no 
# bearing whatsoever on how the properties get used, it just serves as a way to keep the list of
# properties in this file in some sane, organized manner.


################################################################################
##### General properties

#--------------------------------------------------------------------------------------
# Set to true to allow plugins found in the 'plugins' directory to be loaded.
# For example, Open Source Census integration is provided as a plugin, and 
# therefore is only available if the following value is 'true'.
load_plugins: true

#--------------------------------------------------------------------------------------
# what directory to walk if no other directories are specified in the inclusion filter
# if --path command line parameter is given, that path will override this one
# if no --path is given and there are no filters in the inclusion_filter list, then
# this path will be used to scan

# The default directory to scan is whatever the path is up to the first \ or / in the
# current working directory.  This results in / for unix-based environments and c:\ 
# for windows (or whatever drive discovery is running from)
directory_to_scan: <% ENV['OSSDISCOVERY_HOME'].match(/^.*?[\\\/]/)[0] %>

#--------------------------------------------------------------------------------------
# which default filter set to use
generic_filters: /filters/filters-list.rb

#--------------------------------------------------------------------------------------
# show permission denied directories or files
show_permission_denied: false

#--------------------------------------------------------------------------------------
# decide whether to scan symlink'd files and directories 
# by default it's true because symlinks are so commonly used
follow_symlinks: true
# maximum number of indirections to follow through symlinks
symlink_depth: 5

#--------------------------------------------------------------------------------------
# When a scan is performed on a production machine, the person performing the scan does 
# not want the scanner to take all system resources. Below are the parameters that will 
# throttle the max amount of system resources that the scanner will consume.
#
# Every x number of files, pause for y number of seconds. 
throttle_number_of_files: 300
throttle_seconds_to_pause: 2.5
# The defaults are 300 and 2 respectively. Here's how these defaults were arrived at.
# A sample scan on my machine ran in 15 minutes, and showed 451499 total files encountered.
# The above defaults add just over an hour of wait time which is roughly 4x the original 
# throttling-disabled run time; a few of us decided 4x sounded good enough for a default on irc.


################################################################################
##### Logging properties

# Arg that will be passed to Logger.new().  From the rdoc: This is a filename (String) or IO object (typically STDOUT, STDERR, or an open file).
log_device: <% File.expand_path( File.join( ENV['OSSDISCOVERY_HOME'], 'log', 'discovery.log')) %>

# Valid options are: FATAL, ERROR, WARN, INFO, DEBUG - 'WARN' is the recommended setting for 
# productions runs, it shouldn't give you too much output, but you also won't miss importatnt warnings.
log_level: <% Logger::INFO %>


################################################################################
##### Debugging/Developer-oriented properties

# Set this property to true if you'd like an auditable list of all the files of interested that triggered successful 
# matches to be printed out.  If it is set to true, the human readable results files will contain data that will be
# useful for a rule writer in terms of auditing all the key files that were matched against during the discovery run.
produce_match_audit_records: false


################################################################################
##### Output properties

#--------------------------------------------------------------------------------------
# where the results should go by default, both of these may be overridden by command
# line options.

# whether to include location (paths) in the machine scan results file.
include_paths: false

# machine readable results file
machine_results: scanresults-census.txt  

# whether or not to show the machine scan results after the scan is complete
preview_results: false

# human readable
results: STDOUT


################################################################################
##### Rules properties

#--------------------------------------------------------------------------------------
# where to pick up the default scan rules
rules_openlogic: <% File.expand_path(File.join( ENV['OSSDISCOVERY_HOME'], 'lib','rules', 'openlogic')) %>
rules_drop_ins: <% File.expand_path(File.join( ENV['OSSDISCOVERY_HOME'], 'lib','rules', 'drop_ins')) %>

rules_dirs: <% ['rules_openlogic', 'rules_drop_ins'] %>
# If you only want to run the tool with your custom written rules, you would put them in the 'drop_ins' dir and change the previous line to:
#   rules_dirs: <% ['rules_drop_ins'] %>


################################################################################
##### Server properties

#--------------------------------------------------------------------------------------
# these items describe where and how scan results are sent
# 
send_results: false                                             # default to not send, can be overridden on command line

# Note that destination_server_url and server_base_url can neither be localhost urls if proxying is being 
# used or tested.  You can't proxy a localhost URL.
#destination_server_url: http://localhost:3000/scans/scanpost   # change to OL disco production server
#destination_server_url: https://192.168.10.11/service/scans/scanpost  # dummy dev location
destination_server_url: https://www.osscensus.org/service/scans/scanpost  # osscensus official

# in some cases, ie: just can't get around a proxy configuration or protocol to programmatically submit results,
# it's still possible to submit results by going to this URL in your browser and uploading the machine results file
upload_url: https://www.osscensus.org/service/upload  # manually upload scanresults-census.txt, use this URL

# WARNING - osscensus production will not accept scans unless this is false
override_https: false

# Configurable options for scan rules updating.  TODO findme: clean this up, combining where possible with the 'destination_server_url' 
# for delivering results above. Note: On hold until the server-side of things has been firmed up.

# TODO - IMPORTANT: This Default/Standard URL needs to point to OpenLogic's Disco 2 server when this goes to production
# localhost URLs won't work if testing or using a proxy - this URL must be changed the real server URL
#server_base_url: http://192.168.10.11/service  # dummy dev location
server_base_url: https://www.osscensus.org/service  # osscensus official
rules_files_url_path: rules_files.xml
rules_file_base_url: https://www.osscensus.org 
# When you navigate in a browser to 'server_base_url + rules_files_url_path' (eg... http://localhost:3000/rules_files.xml), 
# you should see an xml file that specifies all the scan rules files available on the server.

# username password of server submission, should be nil if no authentication is in use
username: nil
password: <PASSWORD> 

# IMPORTANT: proxy data needs to be nil'd out if no proxy is used. 
# Any proxy value not specified (used) is required to be nil

proxy_host: nil     # example: "192.168.10.211"
proxy_port: nil     # 4545 # 3128
proxy_user: nil     # example: corpusername
proxy_password: nil # example: <PASSWORD>
proxy_ntlm_domain: "" # typically left blank, but in case an NTLM-only proxy requires it, it's available for configuration

update_rules: false
update_rules_and_do_scan: false

# geography - used when user wants to submit an anonymous scan to the census
# geography is the minimal data required for the submission
#   geography should be one of the following values:
# 
#  This value can be overridden on the command line with the --geography
#
# in order to see the numeric value to supply for this property, run ossdiscovery --list-geos
# 9999 is an invalid geography, it must be overridden to submit a scan anonymously

geography: 9999

#--------------------------------------------------------------------------------------
# Census code is how the census groups multiple machines together for unified reporting purposes.
# In other words, you can see an aggregated report for all machines using the same census code.
#
# If you already have a census code from registering with the census, you can
# insert the value below or pass it on the command-line.

{'fraction_non_alphanumeric': 0.19905979139121494, 'fraction_numerical': 0.0082268253268694, 'mean_word_length': 2.869268662372111, 'pattern_counts': {'":': 0, '<': 22, '<?xml version=': 0, '>': 22, 'https://': 10, 'lorem ipsum': 0, 'www.': 12, 'xml': 6}, 'pii_count': 6, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 6, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '332306', 'n_tokens_mistral': 5046, 'n_tokens_neox': 4719, 'n_words': 2386}