* NACM module support (RFC8341 A1+A2)
* Recovery user "_nacm_recovery" added.
* Example use is restconf PUT when NACM edit-config is permitted, then automatic commit and discard are permitted using recovery user.
* Example user changed adm1 to andy to comply with RFC8341 example
* Yang code upgrade (RFC7950)
* RPC method input parameters validated
* see https://github.com/clicon/clixon/issues/4
* Correct XML namespace handling
* XML multiple modules was based on "loose" semantics so that yang modules were found by iterating thorugh namespaces until a match was made. This did not adhere to proper [XML namespace handling](https://www.w3.org/TR/2009/REC-xml-names-20091208), and causes problems with overlapping names and false positives. Below see XML accepted (but wrong), and correct namespace declaration:
```
<rpc><my-own-method></rpc> # Wrong but accepted
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> # Correct
<my-own-method xmlns="http://example.net/me/my-own/1.0">
</rpc>
```
* To keep old loose semantics set config option CLICON_XML_NS_ITERATE (true by default)
* XML to JSON translator support for mapping xmlns attribute to module name prefix.
* Default namespace is still "urn:ietf:params:xml:ns:netconf:base:1.0"
* See https://github.com/clicon/clixon/issues/49
* Changed all make tags --> make TAGS
* Keyvalue datastore removed (it has been disabled since 3.3.3)
* debug rpc added in example application (should be in clixon-config).
84 lines
2.4 KiB
Makefile
84 lines
2.4 KiB
Makefile
#
|
|
# ***** BEGIN LICENSE BLOCK *****
|
|
#
|
|
# Copyright (C) 2009-2018 Olof Hagsand and Benny Holmgren
|
|
#
|
|
# This file is part of CLIXON
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
# Alternatively, the contents of this file may be used under the terms of
|
|
# the GNU General Public License Version 3 or later (the "GPL"),
|
|
# in which case the provisions of the GPL are applicable instead
|
|
# of those above. If you wish to allow use of your version of this file only
|
|
# under the terms of the GPL, and not to allow others to
|
|
# use your version of this file under the terms of Apache License version 2,
|
|
# indicate your decision by deleting the provisions above and replace them with
|
|
# the notice and other provisions required by the GPL. If you do not delete
|
|
# the provisions above, a recipient may use your version of this file under
|
|
# the terms of any one of the Apache License version 2 or the GPL.
|
|
#
|
|
# ***** END LICENSE BLOCK *****
|
|
#
|
|
VPATH = @srcdir@
|
|
srcdir = @srcdir@
|
|
top_srcdir = @top_srcdir@
|
|
CC = @CC@
|
|
CFLAGS = @CFLAGS@
|
|
LDFLAGS = @LDFLAGS@
|
|
LIBS = @LIBS@
|
|
with_restconf = @with_restconf@
|
|
|
|
SHELL = /bin/sh
|
|
|
|
SUBDIRS = backend
|
|
SUBDIRS += cli
|
|
SUBDIRS += netconf
|
|
ifeq ($(with_restconf),yes)
|
|
SUBDIRS += restconf
|
|
endif
|
|
|
|
.PHONY: all clean depend install $(SUBDIRS)
|
|
|
|
all: $(SUBDIRS)
|
|
|
|
depend:
|
|
for i in $(SUBDIRS); \
|
|
do (cd $$i; $(MAKE) $(MFLAGS) $@); done
|
|
|
|
$(SUBDIRS):
|
|
(cd $@; $(MAKE) $(MFLAGS) all)
|
|
|
|
install-include:
|
|
for i in $(SUBDIRS); \
|
|
do (cd $$i && $(MAKE) $(MFLAGS) $@||exit 1); done;
|
|
|
|
install:
|
|
for i in $(SUBDIRS); \
|
|
do (cd $$i && $(MAKE) $(MFLAGS) $@)||exit 1; done
|
|
|
|
uninstall:
|
|
for i in $(SUBDIRS); \
|
|
do (cd $$i; $(MAKE) $(MFLAGS) $@)||exit 1; done
|
|
|
|
clean:
|
|
for i in $(SUBDIRS); \
|
|
do (cd $$i; $(MAKE) $(MFLAGS) $@); done
|
|
|
|
distclean: clean
|
|
rm -f Makefile *~ .depend
|
|
for i in $(SUBDIRS); \
|
|
do (cd $$i; $(MAKE) $(MFLAGS) $@); done
|
|
|
|
TAGS:
|
|
find $(srcdir) -name '*.[chyl]' -print | etags -
|