repo
{
  ; Section defining list of Data prefixes to register
  ; Only 'prefix' option is allowed here, which can be repeated multiple times
  data
  {
    prefix "ndn:/example/data/1"
    prefix "ndn:/example/data/2"
  }

  ; Section defining list of command prefixes (to insert or delete Data) to register.
  ; Only 'prefix' option is allowed here, which can be repeated multiple times
  command
  {
    prefix "ndn:/example/repo/1"
    prefix "ndn:/example/repo/2"
  }

  ; Section to specify where data should be stored
  ; Right now only a single 'sqlite' option is allowed:
  storage
  {
    method "sqlite"             ; Currently, only sqlite storage engine is supported
    path "/var/db/ndn-repo-ng"  ; path to repo-ng storage folder
  }

  ; Section to enable TCP bulk insert capability
  ; If section is present, then TCP bulk insert is enabled (empty section enables
  ; TCP bulk insert to listen on "localhost:7376")
  tcp_bulk_insert {
    ; host "localhost"  ; Set to listen on different IP address or hostname
    ; port 7376  ; Set to listen on different port number
  }

  validator
  {
    ; These rule is just an example of validation of signed interests for commands and data.
    ; User could define its own rule for signed interest or data to be inserted
    ; according to Validator Configuration File Format.
    ; (http://redmine.named-data.net/projects/ndn-cxx/wiki/CommandValidatorConf)
    rule
    {
      id "Simple Rule For Interest"
      for interest
      filter
      {
        type name
        name /example/repo/1
        relation is-prefix-of
      }
      checker
      {
        type fixed-signer
        sig-type rsa-sha256
        signer
        {
          type file
          ; repo-ng.cert.sample is just a non-existent certificate.
          ; User should create its own certification using Security Tool.
          ; (http://redmine.named-data.net/projects/ndn-cxx/wiki/SecurityTools)
          file-name "repo-ng.cert.sample"
        }
      }
    }

    rule
    {
      id "Simple Rule For Data"
      for data
      filter
      {
        type name
        name /example/data/1
        relation is-prefix-of
      }
      checker
      {
        type fixed-signer
        sig-type rsa-sha256
        signer
        {
          type file
          ; repo-ng.cert.sample is just a non-existent certificate.
          ; User should create its own certification using Security Tool.
          ; (http://redmine.named-data.net/projects/ndn-cxx/wiki/SecurityTools)
          file-name "repo-ng.cert.sample"
        }
      }
    }
  }
}