mirror of
				https://github.com/cmur2/dyndnsd.git
				synced 2025-10-31 00:25:06 +01:00 
			
		
		
		
	dyndnsd: handle potential nil cases detected by sorbet
- including review suggestions from @jgraichen
This commit is contained in:
		| @@ -1,5 +1,11 @@ | ||||
| # Changelog | ||||
|  | ||||
| ## 2.1.1 | ||||
|  | ||||
| IMPROVEMENTS: | ||||
|  | ||||
| - Fix potential `nil` cases detected by [Sorbet](https://sorbet.org) including refactorings | ||||
|  | ||||
| ## 2.1.0 (March 1, 2020) | ||||
|  | ||||
| IMPROVEMENTS: | ||||
|   | ||||
| @@ -112,8 +112,14 @@ module Dyndnsd | ||||
|  | ||||
|       # drop priviliges as soon as possible | ||||
|       # NOTE: first change group than user | ||||
|       Process::Sys.setgid(Etc.getgrnam(config['group']).gid) if config['group'] | ||||
|       Process::Sys.setuid(Etc.getpwnam(config['user']).uid) if config['user'] | ||||
|       if config['group'] | ||||
|         group = Etc.getgrnam(config['group']) | ||||
|         Process::Sys.setgid(group.gid) if group | ||||
|       end | ||||
|       if config['user'] | ||||
|         user = Etc.getpwnam(config['user']) | ||||
|         Process::Sys.setuid(user.uid) if user | ||||
|       end | ||||
|  | ||||
|       setup_traps | ||||
|  | ||||
|   | ||||
| @@ -15,7 +15,7 @@ module Dyndnsd | ||||
|     # @return [void] | ||||
|     def load | ||||
|       if File.file?(@db_file) | ||||
|         @db = JSON.parse(File.open(@db_file, 'r', &:read)) | ||||
|         @db = JSON.parse(File.read(@db_file, mode: 'r')) | ||||
|       else | ||||
|         @db = {} | ||||
|       end | ||||
|   | ||||
| @@ -57,7 +57,7 @@ module Dyndnsd | ||||
|           'error.kind': e.class.to_s, | ||||
|           'error.object': e, | ||||
|           message: e.message, | ||||
|           stack: e.backtrace.join("\n") | ||||
|           stack: e.backtrace&.join("\n") || '' | ||||
|         ) | ||||
|         raise | ||||
|       ensure | ||||
|   | ||||
| @@ -14,7 +14,7 @@ module Dyndnsd | ||||
|       # @return [void] | ||||
|       def update(db) | ||||
|         Helper.span('updater_update') do |span| | ||||
|           span.set_tag('dyndnsd.updater.name', self.class.name.split('::').last) | ||||
|           span.set_tag('dyndnsd.updater.name', self.class.name&.split('::')&.last || 'None') | ||||
|  | ||||
|           # write zone file in bind syntax | ||||
|           File.open(@zone_file, 'w') { |f| f.write(@generator.generate(db)) } | ||||
| @@ -24,7 +24,7 @@ module Dyndnsd | ||||
|           end | ||||
|  | ||||
|           # detach so children don't become zombies | ||||
|           Process.detach(pid) | ||||
|           Process.detach(pid) if pid | ||||
|         end | ||||
|       end | ||||
|     end | ||||
|   | ||||
		Reference in New Issue
	
	Block a user