module Dinomischus

require File.expand_path('../../dinomischus.rb', __FILE__)

Constants

VERSION

Attributes

items[R]

Public Class Methods

create_conf_file(conf_path, key_path) click to toggle source
# File lib/dinomischus.rb, line 29
def self.create_conf_file(conf_path, key_path)
  Dinomischus::ConfFile.create(conf_path, key_path)
end
create_def_file(def_path, conf_path) click to toggle source

Create the define file

# File lib/dinomischus.rb, line 25
def self.create_def_file(def_path, conf_path)
  Dinomischus::DefFile.create(def_path, conf_path)
end
create_key_file(path, password = "") click to toggle source

Create the key file

# File lib/dinomischus.rb, line 20
def self.create_key_file(path, password = "")
  Dinomischus::KeyFile.create(path, password)
end
dino_decrypt(key_path, value) click to toggle source
# File lib/dinomischus/utils/crypt_dino.rb, line 22
def self.dino_decrypt(key_path, value)
    raise RuntimeError.new("鍵ファイルが存在しません。#{key_path}") if !File.exist?(key_path)
    
    keys = YAML.load_file(key_path)
    enctype = keys[:key][:type] 
    if enctype == "sha256"
      pass = keys[:key][:value]
      v2 = Crypter::CryptAes.decrypt( value, pass )
      v1raw = YAML.load(v2)
      v1 = Crypter::CryptAes.decrypt( v1raw[0], pass, v1raw[1])
    else
      raise RuntimeError.new("未サポートの暗号です。#{enctype}")
    end
end
dino_encrypt(key_path, value) click to toggle source
# File lib/dinomischus/utils/crypt_dino.rb, line 6
def self.dino_encrypt(key_path, value)
    raise RuntimeError.new("鍵ファイルが存在しません。#{key_path}") if !File.exist?(key_path)
    
    keys = YAML.load_file(key_path)
    enctype = keys[:key][:type] 
    if enctype == "sha256"
      # sha256の処理。
      pass = keys[:key][:value]
      enc1 = Crypter::CryptAes.encrypt( value, pass, true )
      enc2 = Crypter::CryptAes.encrypt( enc1.to_s, pass, false )
    else
      raise RuntimeError.new("未サポートの暗号です。#{enctype}")
    end
    enc2[0]
end
load_file( path, specify = false ) click to toggle source

Read Config File

# File lib/dinomischus.rb, line 38
def self.load_file( path, specify = false )
  # get loading target
  yml = YAML.load_file(path)
  # files = yml[0].has_key?(:conf_path) ? yml : [ {conf_path: path} ]
  # base_dir = yml[0].has_key?
  files = []
  base_dir = ""
  if yml[0].has_key?(:conf_path) then
    files = yml
    base_dir = File.dirname(path)
  else
    files = [ {conf_path: path} ]
    base_dir = Dir.pwd
  end

  # loading config files...
  config_list = {}
  files.each do |p|
    items = {}
    conf_path = File.expand_path(p[:conf_path], base_dir )
    items = load_conf(conf_path, specify)
    merge_yaml(config_list, items)
  end
  config_list
end
menu() click to toggle source

Menu

set_config(conf_path, key, value, desc = "", do_encrypt = false) click to toggle source
# File lib/dinomischus.rb, line 33
def self.set_config(conf_path, key, value, desc = "", do_encrypt = false)
  Dinomischus::ConfFile.set_item(conf_path, key, value, desc, do_encrypt)
end

Private Class Methods

load_conf(conf_path, specify ) click to toggle source
# File lib/dinomischus.rb, line 66
def self.load_conf(conf_path, specify )
  Dinomischus::ConfFile.load_file(conf_path, specify)
end