)]}'
{
  "commit": "9ab6812d1dd27813f3ae01624312edc21c1a0bb6",
  "tree": "0e74ebe8d75aa0217233de3045240579933395eb",
  "parents": [
    "eda031f6f3558239da5ceb196312ff71aa74fef1"
  ],
  "author": {
    "name": "paul",
    "email": "paul",
    "time": "Sat Jan 18 01:16:20 2003 +0000"
  },
  "committer": {
    "name": "paul",
    "email": "paul",
    "time": "Sat Jan 18 01:16:20 2003 +0000"
  },
  "message": "This patch adds Yon\u0027s CLI \u0027walk back up tree\u0027 patch. Following are email\ndescribing original patch and a shorter email describing changes to an\nupdated patch, the one which is applied:\n\nFrom havanna_moon@gmx.net Sat Jan 18 00:37:13 2003\nDate: Mon, 9 Dec 2002 05:32:58 +0100 (CET)\nFrom: Yon Uriarte \u003chavanna_moon@gmx.net\u003e\nTo: \"the list(tm) Zebra\" \u003czebra@zebra.org\u003e\nSubject: [zebra 16671] [PATCH] CLI extensions.\n\nHi,\n\n this patch adds 2 improvements to the CLI (lib/command.c):\n\n#1) When in subconfig mode (router XXX, interface XXX, ...) commands that\nfail for that node are tried on the main CONFIG_NODE. This is great for\nconfiguring interfaces or changing the sub-config mode quickly, without\nthe need to type \u0027exit\u0027 between commands:\n\nospfd(config)# int eth1\nospfd(config-if)# ip ospf cost 9\nospfd(config-if)# ip ospf prio 101\nospfd(config-if)# router ospf\nospfd(config-router)# network 1.1.1.0/24 area 51\nospfd(config-router)# int eth2\nospfd(config-if)# ip ospf authentication message-digest\nospfd(config-if)# ^Z\nospfd#\n\n Is this IOS-like or does IOS try to walk up the tree of config sub-modes\ninstead of directly trying the command on CONFIG_NODE?\n\nCAVEATS: \"?\" and \"TAB\" don\u0027t work.  IIRC IOS doesnt show that help\nneither.\n\nNON-CAVEATS: This wont break much, as config_from_file() already does\ntry a failed command on the parent node of the actual vty-\u003enode. If\nchanging the code to walk the node tree instead of directly trying\nthe command on the ENABLE_NODE the same semantics would be in use\nand no future bugs could creep in.\n\n#2) When in config or subconfig mode use the \"do \" prefix to execute\ncommans of the ENABLE_NODE. \"?\" and \"TAB\" work. The space after the\n\"do\" is needed:\n\nospfd(config-router)# do\u003c?\u003e\n% There is no matched command.\nospfd(config-router)# do \u003c?\u003e\n  clear      Reset functions\n  configure  Configuration from vty interface\n  copy       Copy configuration\n  debug      Debugging functions (see also \u0027undebug\u0027)\n  disable    Turn off privileged mode command\n  end        End current mode and change to enable mode.\n  exit       Exit current mode and down to previous mode\n  help       Description of the interactive help system\n  list       Print command list\n  no         Negate a command or set its defaults\n  quit       Exit current mode and down to previous mode\n  show       Show running system information\n  terminal   Set terminal line parameters\n  who        Display who is on vty\n  write      Write running configuration to memory, network, or terminal\nospfd(config-router)# do sho\u003cTAB\u003e\nospfd(config-router)# do show me\u003cTAB\u003e\nospfd(config-router)# do show memory r\u003cTAB\u003e\nospfd(config-router)# do show memory rip\nRIP structure         :     0\nRIP route info        :     0\nRIP interface         :     0\nRIP peer              :     0\nRIP offset list       :     0\nRIP distance          :     0\nospfd(config-router)# ^Z\nospfd#\n\n\nCAVEATS: I don\u0027t have access to an IOS with this feature, so I implemented\nit from the comments on this mailing list (in fact my personal motivation\nwas to implement feature #1, which I missed on zebra. But #2 sounded like\na nice one to have, and xemacs was already parked on command.c ...).\nIs this IOS-like or are there differences?\n\n I will happily change this patch to mimick IOS or the mailing-list\nconsensus on CLI-usability.\n\nregards,\n yon\n\nFrom havanna_moon@gmx.net Sat Jan 18 01:13:11 2003\nDate: Sat, 11 Jan 2003 23:36:51 +0100 (CET)\nFrom: Yon Uriarte \u003chavanna_moon@gmx.net\u003e\nTo: zebra@zebra.org\nSubject: [zebra 17218] Re: [PATCH] CLI extensions.\n\nHi,\n\n[redacted]\n\n\u003e I prefer the IOS way for the node \"up walking\".\n\n This patch should walk the tree upwards:\n\nbgpd(config)# router bgp 1\nbgpd(config-router)# address-family ipv4 multicast\nbgpd(config-router-af)# access-list 1 remark hola que tal\nbgpd(config)#\n\n I cant test all combinations, so I cant rule out some bugs. I\u0027d love to\nget (long and explicit) bug reports.\n\n\n[redacted]\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f0ddb6d742b6d51558804b9fc0ccc48d25291eef",
      "old_mode": 33188,
      "old_path": "lib/command.c",
      "new_id": "f57cf5caddda342721d161f0c94369bfe8858b74",
      "new_mode": 33188,
      "new_path": "lib/command.c"
    }
  ]
}
