some dns resolver code
This commit is contained in:
		@ -1,7 +1,7 @@
 | 
				
			|||||||
# Makefile.in generated by automake 1.15 from Makefile.am.
 | 
					# Makefile.in generated by automake 1.16.1 from Makefile.am.
 | 
				
			||||||
# @configure_input@
 | 
					# @configure_input@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1994-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This Makefile.in is free software; the Free Software Foundation
 | 
					# This Makefile.in is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -139,7 +139,7 @@ am__recursive_targets = \
 | 
				
			|||||||
  $(RECURSIVE_CLEAN_TARGETS) \
 | 
					  $(RECURSIVE_CLEAN_TARGETS) \
 | 
				
			||||||
  $(am__extra_recursive_targets)
 | 
					  $(am__extra_recursive_targets)
 | 
				
			||||||
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 | 
					AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 | 
				
			||||||
	cscope distdir dist dist-all distcheck
 | 
						cscope distdir distdir-am dist dist-all distcheck
 | 
				
			||||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 | 
					am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 | 
				
			||||||
# Read a list of newline-separated strings from the standard input,
 | 
					# Read a list of newline-separated strings from the standard input,
 | 
				
			||||||
# and print each of them once, without duplicates.  Input order is
 | 
					# and print each of them once, without duplicates.  Input order is
 | 
				
			||||||
@ -384,8 +384,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 | 
				
			|||||||
	    echo ' $(SHELL) ./config.status'; \
 | 
						    echo ' $(SHELL) ./config.status'; \
 | 
				
			||||||
	    $(SHELL) ./config.status;; \
 | 
						    $(SHELL) ./config.status;; \
 | 
				
			||||||
	  *) \
 | 
						  *) \
 | 
				
			||||||
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
 | 
						    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
 | 
				
			||||||
	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
 | 
						    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
 | 
				
			||||||
	esac;
 | 
						esac;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 | 
					$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 | 
				
			||||||
@ -512,7 +512,10 @@ distclean-tags:
 | 
				
			|||||||
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 | 
						-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 | 
				
			||||||
	-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
 | 
						-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
 | 
				
			||||||
 | 
					
 | 
				
			||||||
distdir: $(DISTFILES)
 | 
					distdir: $(BUILT_SOURCES)
 | 
				
			||||||
 | 
						$(MAKE) $(AM_MAKEFLAGS) distdir-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					distdir-am: $(DISTFILES)
 | 
				
			||||||
	$(am__remove_distdir)
 | 
						$(am__remove_distdir)
 | 
				
			||||||
	test -d "$(distdir)" || mkdir "$(distdir)"
 | 
						test -d "$(distdir)" || mkdir "$(distdir)"
 | 
				
			||||||
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
						@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										4
									
								
								mio/ac/ar-lib
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										4
									
								
								mio/ac/ar-lib
									
									
									
										generated
									
									
									
								
							@ -4,7 +4,7 @@
 | 
				
			|||||||
me=ar-lib
 | 
					me=ar-lib
 | 
				
			||||||
scriptversion=2012-03-01.08; # UTC
 | 
					scriptversion=2012-03-01.08; # UTC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2010-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2010-2018 Free Software Foundation, Inc.
 | 
				
			||||||
# Written by Peter Rosin <peda@lysator.liu.se>.
 | 
					# Written by Peter Rosin <peda@lysator.liu.se>.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This program is free software; you can redistribute it and/or modify
 | 
					# This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
@ -18,7 +18,7 @@ scriptversion=2012-03-01.08; # UTC
 | 
				
			|||||||
# GNU General Public License for more details.
 | 
					# GNU General Public License for more details.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# You should have received a copy of the GNU General Public License
 | 
					# You should have received a copy of the GNU General Public License
 | 
				
			||||||
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# As a special exception to the GNU General Public License, if you
 | 
					# As a special exception to the GNU General Public License, if you
 | 
				
			||||||
# distribute this file as part of a program that contains a
 | 
					# distribute this file as part of a program that contains a
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										13
									
								
								mio/ac/compile
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										13
									
								
								mio/ac/compile
									
									
									
										generated
									
									
									
								
							@ -1,9 +1,9 @@
 | 
				
			|||||||
#! /bin/sh
 | 
					#! /bin/sh
 | 
				
			||||||
# Wrapper for compilers which do not understand '-c -o'.
 | 
					# Wrapper for compilers which do not understand '-c -o'.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
scriptversion=2012-10-14.11; # UTC
 | 
					scriptversion=2018-03-07.03; # UTC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 | 
				
			||||||
# Written by Tom Tromey <tromey@cygnus.com>.
 | 
					# Written by Tom Tromey <tromey@cygnus.com>.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This program is free software; you can redistribute it and/or modify
 | 
					# This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
@ -17,7 +17,7 @@ scriptversion=2012-10-14.11; # UTC
 | 
				
			|||||||
# GNU General Public License for more details.
 | 
					# GNU General Public License for more details.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# You should have received a copy of the GNU General Public License
 | 
					# You should have received a copy of the GNU General Public License
 | 
				
			||||||
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# As a special exception to the GNU General Public License, if you
 | 
					# As a special exception to the GNU General Public License, if you
 | 
				
			||||||
# distribute this file as part of a program that contains a
 | 
					# distribute this file as part of a program that contains a
 | 
				
			||||||
@ -255,7 +255,8 @@ EOF
 | 
				
			|||||||
    echo "compile $scriptversion"
 | 
					    echo "compile $scriptversion"
 | 
				
			||||||
    exit $?
 | 
					    exit $?
 | 
				
			||||||
    ;;
 | 
					    ;;
 | 
				
			||||||
  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
 | 
					  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
 | 
				
			||||||
 | 
					  icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
 | 
				
			||||||
    func_cl_wrapper "$@"      # Doesn't return...
 | 
					    func_cl_wrapper "$@"      # Doesn't return...
 | 
				
			||||||
    ;;
 | 
					    ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
@ -339,9 +340,9 @@ exit $ret
 | 
				
			|||||||
# Local Variables:
 | 
					# Local Variables:
 | 
				
			||||||
# mode: shell-script
 | 
					# mode: shell-script
 | 
				
			||||||
# sh-indentation: 2
 | 
					# sh-indentation: 2
 | 
				
			||||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
 | 
					# eval: (add-hook 'before-save-hook 'time-stamp)
 | 
				
			||||||
# time-stamp-start: "scriptversion="
 | 
					# time-stamp-start: "scriptversion="
 | 
				
			||||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
					# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
				
			||||||
# time-stamp-time-zone: "UTC"
 | 
					# time-stamp-time-zone: "UTC0"
 | 
				
			||||||
# time-stamp-end: "; # UTC"
 | 
					# time-stamp-end: "; # UTC"
 | 
				
			||||||
# End:
 | 
					# End:
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										743
									
								
								mio/ac/config.guess
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										743
									
								
								mio/ac/config.guess
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										2773
									
								
								mio/ac/config.sub
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2773
									
								
								mio/ac/config.sub
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										10
									
								
								mio/ac/depcomp
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										10
									
								
								mio/ac/depcomp
									
									
									
										generated
									
									
									
								
							@ -1,9 +1,9 @@
 | 
				
			|||||||
#! /bin/sh
 | 
					#! /bin/sh
 | 
				
			||||||
# depcomp - compile a program generating dependencies as side-effects
 | 
					# depcomp - compile a program generating dependencies as side-effects
 | 
				
			||||||
 | 
					
 | 
				
			||||||
scriptversion=2013-05-30.07; # UTC
 | 
					scriptversion=2018-03-07.03; # UTC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This program is free software; you can redistribute it and/or modify
 | 
					# This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
# it under the terms of the GNU General Public License as published by
 | 
					# it under the terms of the GNU General Public License as published by
 | 
				
			||||||
@ -16,7 +16,7 @@ scriptversion=2013-05-30.07; # UTC
 | 
				
			|||||||
# GNU General Public License for more details.
 | 
					# GNU General Public License for more details.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# You should have received a copy of the GNU General Public License
 | 
					# You should have received a copy of the GNU General Public License
 | 
				
			||||||
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# As a special exception to the GNU General Public License, if you
 | 
					# As a special exception to the GNU General Public License, if you
 | 
				
			||||||
# distribute this file as part of a program that contains a
 | 
					# distribute this file as part of a program that contains a
 | 
				
			||||||
@ -783,9 +783,9 @@ exit 0
 | 
				
			|||||||
# Local Variables:
 | 
					# Local Variables:
 | 
				
			||||||
# mode: shell-script
 | 
					# mode: shell-script
 | 
				
			||||||
# sh-indentation: 2
 | 
					# sh-indentation: 2
 | 
				
			||||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
 | 
					# eval: (add-hook 'before-save-hook 'time-stamp)
 | 
				
			||||||
# time-stamp-start: "scriptversion="
 | 
					# time-stamp-start: "scriptversion="
 | 
				
			||||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
					# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
				
			||||||
# time-stamp-time-zone: "UTC"
 | 
					# time-stamp-time-zone: "UTC0"
 | 
				
			||||||
# time-stamp-end: "; # UTC"
 | 
					# time-stamp-end: "; # UTC"
 | 
				
			||||||
# End:
 | 
					# End:
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										47
									
								
								mio/ac/install-sh
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										47
									
								
								mio/ac/install-sh
									
									
									
										generated
									
									
									
								
							@ -1,7 +1,7 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					#!/bin/sh
 | 
				
			||||||
# install - install a program, script, or datafile
 | 
					# install - install a program, script, or datafile
 | 
				
			||||||
 | 
					
 | 
				
			||||||
scriptversion=2013-12-25.23; # UTC
 | 
					scriptversion=2018-03-11.20; # UTC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
 | 
					# This originates from X11R5 (mit/util/scripts/install.sh), which was
 | 
				
			||||||
# later released in X11R6 (xc/config/util/install.sh) with the
 | 
					# later released in X11R6 (xc/config/util/install.sh) with the
 | 
				
			||||||
@ -271,15 +271,18 @@ do
 | 
				
			|||||||
    fi
 | 
					    fi
 | 
				
			||||||
    dst=$dst_arg
 | 
					    dst=$dst_arg
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # If destination is a directory, append the input filename; won't work
 | 
					    # If destination is a directory, append the input filename.
 | 
				
			||||||
    # if double slashes aren't ignored.
 | 
					 | 
				
			||||||
    if test -d "$dst"; then
 | 
					    if test -d "$dst"; then
 | 
				
			||||||
      if test "$is_target_a_directory" = never; then
 | 
					      if test "$is_target_a_directory" = never; then
 | 
				
			||||||
        echo "$0: $dst_arg: Is a directory" >&2
 | 
					        echo "$0: $dst_arg: Is a directory" >&2
 | 
				
			||||||
        exit 1
 | 
					        exit 1
 | 
				
			||||||
      fi
 | 
					      fi
 | 
				
			||||||
      dstdir=$dst
 | 
					      dstdir=$dst
 | 
				
			||||||
      dst=$dstdir/`basename "$src"`
 | 
					      dstbase=`basename "$src"`
 | 
				
			||||||
 | 
					      case $dst in
 | 
				
			||||||
 | 
						*/) dst=$dst$dstbase;;
 | 
				
			||||||
 | 
						*)  dst=$dst/$dstbase;;
 | 
				
			||||||
 | 
					      esac
 | 
				
			||||||
      dstdir_status=0
 | 
					      dstdir_status=0
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
      dstdir=`dirname "$dst"`
 | 
					      dstdir=`dirname "$dst"`
 | 
				
			||||||
@ -288,6 +291,11 @@ do
 | 
				
			|||||||
    fi
 | 
					    fi
 | 
				
			||||||
  fi
 | 
					  fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  case $dstdir in
 | 
				
			||||||
 | 
					    */) dstdirslash=$dstdir;;
 | 
				
			||||||
 | 
					    *)  dstdirslash=$dstdir/;;
 | 
				
			||||||
 | 
					  esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  obsolete_mkdir_used=false
 | 
					  obsolete_mkdir_used=false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if test $dstdir_status != 0; then
 | 
					  if test $dstdir_status != 0; then
 | 
				
			||||||
@ -324,34 +332,43 @@ do
 | 
				
			|||||||
            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
 | 
					            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
 | 
				
			||||||
            ;;
 | 
					            ;;
 | 
				
			||||||
          *)
 | 
					          *)
 | 
				
			||||||
 | 
					            # Note that $RANDOM variable is not portable (e.g. dash);  Use it
 | 
				
			||||||
 | 
					            # here however when possible just to lower collision chance.
 | 
				
			||||||
            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
 | 
					            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
 | 
				
			||||||
            trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            # Because "mkdir -p" follows existing symlinks and we likely work
 | 
				
			||||||
 | 
					            # directly in world-writeable /tmp, make sure that the '$tmpdir'
 | 
				
			||||||
 | 
					            # directory is successfully created first before we actually test
 | 
				
			||||||
 | 
					            # 'mkdir -p' feature.
 | 
				
			||||||
            if (umask $mkdir_umask &&
 | 
					            if (umask $mkdir_umask &&
 | 
				
			||||||
                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
 | 
					                $mkdirprog $mkdir_mode "$tmpdir" &&
 | 
				
			||||||
 | 
					                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
 | 
				
			||||||
            then
 | 
					            then
 | 
				
			||||||
              if test -z "$dir_arg" || {
 | 
					              if test -z "$dir_arg" || {
 | 
				
			||||||
                   # Check for POSIX incompatibilities with -m.
 | 
					                   # Check for POSIX incompatibilities with -m.
 | 
				
			||||||
                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
 | 
					                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
 | 
				
			||||||
                   # other-writable bit of parent directory when it shouldn't.
 | 
					                   # other-writable bit of parent directory when it shouldn't.
 | 
				
			||||||
                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
 | 
					                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
 | 
				
			||||||
                   ls_ld_tmpdir=`ls -ld "$tmpdir"`
 | 
					                   test_tmpdir="$tmpdir/a"
 | 
				
			||||||
 | 
					                   ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
 | 
				
			||||||
                   case $ls_ld_tmpdir in
 | 
					                   case $ls_ld_tmpdir in
 | 
				
			||||||
                     d????-?r-*) different_mode=700;;
 | 
					                     d????-?r-*) different_mode=700;;
 | 
				
			||||||
                     d????-?--*) different_mode=755;;
 | 
					                     d????-?--*) different_mode=755;;
 | 
				
			||||||
                     *) false;;
 | 
					                     *) false;;
 | 
				
			||||||
                   esac &&
 | 
					                   esac &&
 | 
				
			||||||
                   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
 | 
					                   $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
 | 
				
			||||||
                     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
 | 
					                     ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
 | 
				
			||||||
                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
 | 
					                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
 | 
				
			||||||
                   }
 | 
					                   }
 | 
				
			||||||
                 }
 | 
					                 }
 | 
				
			||||||
              then posix_mkdir=:
 | 
					              then posix_mkdir=:
 | 
				
			||||||
              fi
 | 
					              fi
 | 
				
			||||||
              rmdir "$tmpdir/d" "$tmpdir"
 | 
					              rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
 | 
				
			||||||
            else
 | 
					            else
 | 
				
			||||||
              # Remove any dirs left behind by ancient mkdir implementations.
 | 
					              # Remove any dirs left behind by ancient mkdir implementations.
 | 
				
			||||||
              rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
 | 
					              rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
 | 
				
			||||||
            fi
 | 
					            fi
 | 
				
			||||||
            trap '' 0;;
 | 
					            trap '' 0;;
 | 
				
			||||||
        esac;;
 | 
					        esac;;
 | 
				
			||||||
@ -427,8 +444,8 @@ do
 | 
				
			|||||||
  else
 | 
					  else
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Make a couple of temp file names in the proper directory.
 | 
					    # Make a couple of temp file names in the proper directory.
 | 
				
			||||||
    dsttmp=$dstdir/_inst.$$_
 | 
					    dsttmp=${dstdirslash}_inst.$$_
 | 
				
			||||||
    rmtmp=$dstdir/_rm.$$_
 | 
					    rmtmp=${dstdirslash}_rm.$$_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Trap to clean up those temp files at exit.
 | 
					    # Trap to clean up those temp files at exit.
 | 
				
			||||||
    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
 | 
					    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
 | 
				
			||||||
@ -493,9 +510,9 @@ do
 | 
				
			|||||||
done
 | 
					done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Local variables:
 | 
					# Local variables:
 | 
				
			||||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
 | 
					# eval: (add-hook 'before-save-hook 'time-stamp)
 | 
				
			||||||
# time-stamp-start: "scriptversion="
 | 
					# time-stamp-start: "scriptversion="
 | 
				
			||||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
					# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
				
			||||||
# time-stamp-time-zone: "UTC"
 | 
					# time-stamp-time-zone: "UTC0"
 | 
				
			||||||
# time-stamp-end: "; # UTC"
 | 
					# time-stamp-end: "; # UTC"
 | 
				
			||||||
# End:
 | 
					# End:
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										6
									
								
								mio/ac/ltmain.sh
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										6
									
								
								mio/ac/ltmain.sh
									
									
									
										generated
									
									
									
								
							@ -2124,7 +2124,7 @@ fi
 | 
				
			|||||||
# a configuration failure hint, and exit.
 | 
					# a configuration failure hint, and exit.
 | 
				
			||||||
func_fatal_configuration ()
 | 
					func_fatal_configuration ()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    func__fatal_error ${1+"$@"} \
 | 
					    func_fatal_error ${1+"$@"} \
 | 
				
			||||||
      "See the $PACKAGE documentation for more information." \
 | 
					      "See the $PACKAGE documentation for more information." \
 | 
				
			||||||
      "Fatal configuration error."
 | 
					      "Fatal configuration error."
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -7272,10 +7272,12 @@ func_mode_link ()
 | 
				
			|||||||
      # -tp=*                Portland pgcc target processor selection
 | 
					      # -tp=*                Portland pgcc target processor selection
 | 
				
			||||||
      # --sysroot=*          for sysroot support
 | 
					      # --sysroot=*          for sysroot support
 | 
				
			||||||
      # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
 | 
					      # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
 | 
				
			||||||
 | 
					      # -specs=*             GCC specs files
 | 
				
			||||||
      # -stdlib=*            select c++ std lib with clang
 | 
					      # -stdlib=*            select c++ std lib with clang
 | 
				
			||||||
      -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
 | 
					      -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
 | 
				
			||||||
      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
 | 
					      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
 | 
				
			||||||
      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
 | 
					      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
 | 
				
			||||||
 | 
					      -specs=*)
 | 
				
			||||||
        func_quote_for_eval "$arg"
 | 
					        func_quote_for_eval "$arg"
 | 
				
			||||||
	arg=$func_quote_for_eval_result
 | 
						arg=$func_quote_for_eval_result
 | 
				
			||||||
        func_append compile_command " $arg"
 | 
					        func_append compile_command " $arg"
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										16
									
								
								mio/ac/missing
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										16
									
								
								mio/ac/missing
									
									
									
										generated
									
									
									
								
							@ -1,9 +1,9 @@
 | 
				
			|||||||
#! /bin/sh
 | 
					#! /bin/sh
 | 
				
			||||||
# Common wrapper for a few potentially missing GNU programs.
 | 
					# Common wrapper for a few potentially missing GNU programs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
scriptversion=2013-10-28.13; # UTC
 | 
					scriptversion=2018-03-07.03; # UTC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 | 
				
			||||||
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 | 
					# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This program is free software; you can redistribute it and/or modify
 | 
					# This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
@ -17,7 +17,7 @@ scriptversion=2013-10-28.13; # UTC
 | 
				
			|||||||
# GNU General Public License for more details.
 | 
					# GNU General Public License for more details.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# You should have received a copy of the GNU General Public License
 | 
					# You should have received a copy of the GNU General Public License
 | 
				
			||||||
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# As a special exception to the GNU General Public License, if you
 | 
					# As a special exception to the GNU General Public License, if you
 | 
				
			||||||
# distribute this file as part of a program that contains a
 | 
					# distribute this file as part of a program that contains a
 | 
				
			||||||
@ -101,9 +101,9 @@ else
 | 
				
			|||||||
  exit $st
 | 
					  exit $st
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
perl_URL=http://www.perl.org/
 | 
					perl_URL=https://www.perl.org/
 | 
				
			||||||
flex_URL=http://flex.sourceforge.net/
 | 
					flex_URL=https://github.com/westes/flex
 | 
				
			||||||
gnu_software_URL=http://www.gnu.org/software
 | 
					gnu_software_URL=https://www.gnu.org/software
 | 
				
			||||||
 | 
					
 | 
				
			||||||
program_details ()
 | 
					program_details ()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -207,9 +207,9 @@ give_advice "$1" | sed -e '1s/^/WARNING: /' \
 | 
				
			|||||||
exit $st
 | 
					exit $st
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Local variables:
 | 
					# Local variables:
 | 
				
			||||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
 | 
					# eval: (add-hook 'before-save-hook 'time-stamp)
 | 
				
			||||||
# time-stamp-start: "scriptversion="
 | 
					# time-stamp-start: "scriptversion="
 | 
				
			||||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
					# time-stamp-format: "%:y-%02m-%02d.%02H"
 | 
				
			||||||
# time-stamp-time-zone: "UTC"
 | 
					# time-stamp-time-zone: "UTC0"
 | 
				
			||||||
# time-stamp-end: "; # UTC"
 | 
					# time-stamp-end: "; # UTC"
 | 
				
			||||||
# End:
 | 
					# End:
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										191
									
								
								mio/aclocal.m4
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										191
									
								
								mio/aclocal.m4
									
									
									
									
										vendored
									
									
								
							@ -1,6 +1,6 @@
 | 
				
			|||||||
# generated automatically by aclocal 1.15 -*- Autoconf -*-
 | 
					# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -20,7 +20,7 @@ You have another version of autoconf.  It may work, but is not guaranteed to.
 | 
				
			|||||||
If you have problems, you may need to regenerate the build system entirely.
 | 
					If you have problems, you may need to regenerate the build system entirely.
 | 
				
			||||||
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 | 
					To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2002-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2002-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -32,10 +32,10 @@ To do so, use the procedure documented by the package, typically 'autoreconf'.])
 | 
				
			|||||||
# generated from the m4 files accompanying Automake X.Y.
 | 
					# generated from the m4 files accompanying Automake X.Y.
 | 
				
			||||||
# (This private macro should not be called outside this file.)
 | 
					# (This private macro should not be called outside this file.)
 | 
				
			||||||
AC_DEFUN([AM_AUTOMAKE_VERSION],
 | 
					AC_DEFUN([AM_AUTOMAKE_VERSION],
 | 
				
			||||||
[am__api_version='1.15'
 | 
					[am__api_version='1.16'
 | 
				
			||||||
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 | 
					dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 | 
				
			||||||
dnl require some minimum version.  Point them to the right macro.
 | 
					dnl require some minimum version.  Point them to the right macro.
 | 
				
			||||||
m4_if([$1], [1.15], [],
 | 
					m4_if([$1], [1.16.1], [],
 | 
				
			||||||
      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 | 
					      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 | 
				
			||||||
])
 | 
					])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -51,12 +51,12 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 | 
				
			|||||||
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 | 
					# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 | 
				
			||||||
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 | 
					# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 | 
				
			||||||
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
 | 
					AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
 | 
				
			||||||
[AM_AUTOMAKE_VERSION([1.15])dnl
 | 
					[AM_AUTOMAKE_VERSION([1.16.1])dnl
 | 
				
			||||||
m4_ifndef([AC_AUTOCONF_VERSION],
 | 
					m4_ifndef([AC_AUTOCONF_VERSION],
 | 
				
			||||||
  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 | 
					  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 | 
				
			||||||
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 | 
					_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2011-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2011-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -118,7 +118,7 @@ AC_SUBST([AR])dnl
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 | 
					# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -170,7 +170,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# AM_CONDITIONAL                                            -*- Autoconf -*-
 | 
					# AM_CONDITIONAL                                            -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1997-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1997-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -201,7 +201,7 @@ AC_CONFIG_COMMANDS_PRE(
 | 
				
			|||||||
Usually this means the macro was only invoked conditionally.]])
 | 
					Usually this means the macro was only invoked conditionally.]])
 | 
				
			||||||
fi])])
 | 
					fi])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -392,13 +392,12 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Generate code to set up dependency tracking.              -*- Autoconf -*-
 | 
					# Generate code to set up dependency tracking.              -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
# with or without modifications, as long as this notice is preserved.
 | 
					# with or without modifications, as long as this notice is preserved.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
# _AM_OUTPUT_DEPENDENCY_COMMANDS
 | 
					# _AM_OUTPUT_DEPENDENCY_COMMANDS
 | 
				
			||||||
# ------------------------------
 | 
					# ------------------------------
 | 
				
			||||||
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
					AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
				
			||||||
@ -406,49 +405,41 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
				
			|||||||
  # Older Autoconf quotes --file arguments for eval, but not when files
 | 
					  # Older Autoconf quotes --file arguments for eval, but not when files
 | 
				
			||||||
  # are listed without --file.  Let's play safe and only enable the eval
 | 
					  # are listed without --file.  Let's play safe and only enable the eval
 | 
				
			||||||
  # if we detect the quoting.
 | 
					  # if we detect the quoting.
 | 
				
			||||||
  case $CONFIG_FILES in
 | 
					  # TODO: see whether this extra hack can be removed once we start
 | 
				
			||||||
  *\'*) eval set x "$CONFIG_FILES" ;;
 | 
					  # requiring Autoconf 2.70 or later.
 | 
				
			||||||
  *)   set x $CONFIG_FILES ;;
 | 
					  AS_CASE([$CONFIG_FILES],
 | 
				
			||||||
  esac
 | 
					          [*\'*], [eval set x "$CONFIG_FILES"],
 | 
				
			||||||
 | 
					          [*], [set x $CONFIG_FILES])
 | 
				
			||||||
  shift
 | 
					  shift
 | 
				
			||||||
  for mf
 | 
					  # Used to flag and report bootstrapping failures.
 | 
				
			||||||
 | 
					  am_rc=0
 | 
				
			||||||
 | 
					  for am_mf
 | 
				
			||||||
  do
 | 
					  do
 | 
				
			||||||
    # Strip MF so we end up with the name of the file.
 | 
					    # Strip MF so we end up with the name of the file.
 | 
				
			||||||
    mf=`echo "$mf" | sed -e 's/:.*$//'`
 | 
					    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
 | 
				
			||||||
    # Check whether this is an Automake generated Makefile or not.
 | 
					    # Check whether this is an Automake generated Makefile which includes
 | 
				
			||||||
    # We used to match only the files named 'Makefile.in', but
 | 
					    # dependency-tracking related rules and includes.
 | 
				
			||||||
    # some people rename them; so instead we look at the file content.
 | 
					    # Grep'ing the whole file directly is not great: AIX grep has a line
 | 
				
			||||||
    # Grep'ing the first line is not enough: some people post-process
 | 
					 | 
				
			||||||
    # each Makefile.in and add a new line on top of each file to say so.
 | 
					 | 
				
			||||||
    # Grep'ing the whole file is not good either: AIX grep has a line
 | 
					 | 
				
			||||||
    # limit of 2048, but all sed's we know have understand at least 4000.
 | 
					    # limit of 2048, but all sed's we know have understand at least 4000.
 | 
				
			||||||
    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
 | 
					    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
 | 
				
			||||||
      dirpart=`AS_DIRNAME("$mf")`
 | 
					      || continue
 | 
				
			||||||
    else
 | 
					    am_dirpart=`AS_DIRNAME(["$am_mf"])`
 | 
				
			||||||
      continue
 | 
					    am_filepart=`AS_BASENAME(["$am_mf"])`
 | 
				
			||||||
 | 
					    AM_RUN_LOG([cd "$am_dirpart" \
 | 
				
			||||||
 | 
					      && sed -e '/# am--include-marker/d' "$am_filepart" \
 | 
				
			||||||
 | 
					        | $MAKE -f - am--depfiles]) || am_rc=$?
 | 
				
			||||||
 | 
					  done
 | 
				
			||||||
 | 
					  if test $am_rc -ne 0; then
 | 
				
			||||||
 | 
					    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
 | 
				
			||||||
 | 
					    for automatic dependency tracking.  Try re-running configure with the
 | 
				
			||||||
 | 
					    '--disable-dependency-tracking' option to at least be able to build
 | 
				
			||||||
 | 
					    the package (albeit without support for automatic dependency tracking).])
 | 
				
			||||||
  fi
 | 
					  fi
 | 
				
			||||||
    # Extract the definition of DEPDIR, am__include, and am__quote
 | 
					  AS_UNSET([am_dirpart])
 | 
				
			||||||
    # from the Makefile without running 'make'.
 | 
					  AS_UNSET([am_filepart])
 | 
				
			||||||
    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
 | 
					  AS_UNSET([am_mf])
 | 
				
			||||||
    test -z "$DEPDIR" && continue
 | 
					  AS_UNSET([am_rc])
 | 
				
			||||||
    am__include=`sed -n 's/^am__include = //p' < "$mf"`
 | 
					  rm -f conftest-deps.mk
 | 
				
			||||||
    test -z "$am__include" && continue
 | 
					 | 
				
			||||||
    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
 | 
					 | 
				
			||||||
    # Find all dependency output files, they are included files with
 | 
					 | 
				
			||||||
    # $(DEPDIR) in their names.  We invoke sed twice because it is the
 | 
					 | 
				
			||||||
    # simplest approach to changing $(DEPDIR) to its actual value in the
 | 
					 | 
				
			||||||
    # expansion.
 | 
					 | 
				
			||||||
    for file in `sed -n "
 | 
					 | 
				
			||||||
      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
 | 
					 | 
				
			||||||
	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
 | 
					 | 
				
			||||||
      # Make sure the directory exists.
 | 
					 | 
				
			||||||
      test -f "$dirpart/$file" && continue
 | 
					 | 
				
			||||||
      fdir=`AS_DIRNAME(["$file"])`
 | 
					 | 
				
			||||||
      AS_MKDIR_P([$dirpart/$fdir])
 | 
					 | 
				
			||||||
      # echo "creating $dirpart/$file"
 | 
					 | 
				
			||||||
      echo '# dummy' > "$dirpart/$file"
 | 
					 | 
				
			||||||
    done
 | 
					 | 
				
			||||||
  done
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 | 
					])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -457,18 +448,17 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
				
			|||||||
# -----------------------------
 | 
					# -----------------------------
 | 
				
			||||||
# This macro should only be invoked once -- use via AC_REQUIRE.
 | 
					# This macro should only be invoked once -- use via AC_REQUIRE.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This code is only required when automatic dependency tracking
 | 
					# This code is only required when automatic dependency tracking is enabled.
 | 
				
			||||||
# is enabled.  FIXME.  This creates each '.P' file that we will
 | 
					# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
 | 
				
			||||||
# need in order to bootstrap the dependency handling code.
 | 
					# order to bootstrap the dependency handling code.
 | 
				
			||||||
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
					AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
				
			||||||
[AC_CONFIG_COMMANDS([depfiles],
 | 
					[AC_CONFIG_COMMANDS([depfiles],
 | 
				
			||||||
     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
					     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
				
			||||||
     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
 | 
					     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
 | 
				
			||||||
])
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Do all the work for Automake.                             -*- Autoconf -*-
 | 
					# Do all the work for Automake.                             -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -555,8 +545,8 @@ AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
 | 
				
			|||||||
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 | 
					AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 | 
				
			||||||
# For better backward compatibility.  To be removed once Automake 1.9.x
 | 
					# For better backward compatibility.  To be removed once Automake 1.9.x
 | 
				
			||||||
# dies out for good.  For more background, see:
 | 
					# dies out for good.  For more background, see:
 | 
				
			||||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 | 
					# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 | 
				
			||||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 | 
					# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 | 
				
			||||||
AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 | 
					AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 | 
				
			||||||
# We need awk for the "check" target (and possibly the TAP driver).  The
 | 
					# We need awk for the "check" target (and possibly the TAP driver).  The
 | 
				
			||||||
# system "awk" is bad on some platforms.
 | 
					# system "awk" is bad on some platforms.
 | 
				
			||||||
@ -623,7 +613,7 @@ END
 | 
				
			|||||||
Aborting the configuration process, to ensure you take notice of the issue.
 | 
					Aborting the configuration process, to ensure you take notice of the issue.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
You can download and install GNU coreutils to get an 'rm' implementation
 | 
					You can download and install GNU coreutils to get an 'rm' implementation
 | 
				
			||||||
that behaves properly: <http://www.gnu.org/software/coreutils/>.
 | 
					that behaves properly: <https://www.gnu.org/software/coreutils/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
If you want to complete the configuration process using your problematic
 | 
					If you want to complete the configuration process using your problematic
 | 
				
			||||||
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
 | 
					'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
 | 
				
			||||||
@ -665,7 +655,7 @@ for _am_header in $config_headers :; do
 | 
				
			|||||||
done
 | 
					done
 | 
				
			||||||
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 | 
					echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -686,7 +676,7 @@ if test x"${install_sh+set}" != xset; then
 | 
				
			|||||||
fi
 | 
					fi
 | 
				
			||||||
AC_SUBST([install_sh])])
 | 
					AC_SUBST([install_sh])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2003-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2003-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -707,7 +697,7 @@ AC_SUBST([am__leading_dot])])
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Check to see how 'make' treats includes.	            -*- Autoconf -*-
 | 
					# Check to see how 'make' treats includes.	            -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -715,49 +705,42 @@ AC_SUBST([am__leading_dot])])
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# AM_MAKE_INCLUDE()
 | 
					# AM_MAKE_INCLUDE()
 | 
				
			||||||
# -----------------
 | 
					# -----------------
 | 
				
			||||||
# Check to see how make treats includes.
 | 
					# Check whether make has an 'include' directive that can support all
 | 
				
			||||||
 | 
					# the idioms we need for our automatic dependency tracking code.
 | 
				
			||||||
AC_DEFUN([AM_MAKE_INCLUDE],
 | 
					AC_DEFUN([AM_MAKE_INCLUDE],
 | 
				
			||||||
[am_make=${MAKE-make}
 | 
					[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
 | 
				
			||||||
cat > confinc << 'END'
 | 
					cat > confinc.mk << 'END'
 | 
				
			||||||
am__doit:
 | 
					am__doit:
 | 
				
			||||||
	@echo this is the am__doit target
 | 
						@echo this is the am__doit target >confinc.out
 | 
				
			||||||
.PHONY: am__doit
 | 
					.PHONY: am__doit
 | 
				
			||||||
END
 | 
					END
 | 
				
			||||||
# If we don't find an include directive, just comment out the code.
 | 
					 | 
				
			||||||
AC_MSG_CHECKING([for style of include used by $am_make])
 | 
					 | 
				
			||||||
am__include="#"
 | 
					am__include="#"
 | 
				
			||||||
am__quote=
 | 
					am__quote=
 | 
				
			||||||
_am_result=none
 | 
					# BSD make does it like this.
 | 
				
			||||||
# First try GNU make style include.
 | 
					echo '.include "confinc.mk" # ignored' > confmf.BSD
 | 
				
			||||||
echo "include confinc" > confmf
 | 
					# Other make implementations (GNU, Solaris 10, AIX) do it like this.
 | 
				
			||||||
# Ignore all kinds of additional output from 'make'.
 | 
					echo 'include confinc.mk # ignored' > confmf.GNU
 | 
				
			||||||
case `$am_make -s -f confmf 2> /dev/null` in #(
 | 
					_am_result=no
 | 
				
			||||||
*the\ am__doit\ target*)
 | 
					for s in GNU BSD; do
 | 
				
			||||||
  am__include=include
 | 
					  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
 | 
				
			||||||
  am__quote=
 | 
					  AS_CASE([$?:`cat confinc.out 2>/dev/null`],
 | 
				
			||||||
  _am_result=GNU
 | 
					      ['0:this is the am__doit target'],
 | 
				
			||||||
  ;;
 | 
					      [AS_CASE([$s],
 | 
				
			||||||
esac
 | 
					          [BSD], [am__include='.include' am__quote='"'],
 | 
				
			||||||
# Now try BSD make style include.
 | 
					          [am__include='include' am__quote=''])])
 | 
				
			||||||
if test "$am__include" = "#"; then
 | 
					  if test "$am__include" != "#"; then
 | 
				
			||||||
   echo '.include "confinc"' > confmf
 | 
					    _am_result="yes ($s style)"
 | 
				
			||||||
   case `$am_make -s -f confmf 2> /dev/null` in #(
 | 
					    break
 | 
				
			||||||
   *the\ am__doit\ target*)
 | 
					  fi
 | 
				
			||||||
     am__include=.include
 | 
					done
 | 
				
			||||||
     am__quote="\""
 | 
					rm -f confinc.* confmf.*
 | 
				
			||||||
     _am_result=BSD
 | 
					AC_MSG_RESULT([${_am_result}])
 | 
				
			||||||
     ;;
 | 
					AC_SUBST([am__include])])
 | 
				
			||||||
   esac
 | 
					AC_SUBST([am__quote])])
 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
AC_SUBST([am__include])
 | 
					 | 
				
			||||||
AC_SUBST([am__quote])
 | 
					 | 
				
			||||||
AC_MSG_RESULT([$_am_result])
 | 
					 | 
				
			||||||
rm -f confinc confmf
 | 
					 | 
				
			||||||
])
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 | 
					# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1997-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1997-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -796,7 +779,7 @@ fi
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Helper functions for option handling.                     -*- Autoconf -*-
 | 
					# Helper functions for option handling.                     -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -825,7 +808,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
 | 
				
			|||||||
AC_DEFUN([_AM_IF_OPTION],
 | 
					AC_DEFUN([_AM_IF_OPTION],
 | 
				
			||||||
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 | 
					[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -872,7 +855,7 @@ AC_LANG_POP([C])])
 | 
				
			|||||||
# For backward compatibility.
 | 
					# For backward compatibility.
 | 
				
			||||||
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 | 
					AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -891,7 +874,7 @@ AC_DEFUN([AM_RUN_LOG],
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Check to make sure that the build environment is sane.    -*- Autoconf -*-
 | 
					# Check to make sure that the build environment is sane.    -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -972,7 +955,7 @@ AC_CONFIG_COMMANDS_PRE(
 | 
				
			|||||||
rm -f conftest.file
 | 
					rm -f conftest.file
 | 
				
			||||||
])
 | 
					])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2009-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2009-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -1032,7 +1015,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 | 
				
			|||||||
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 | 
					_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 | 
				
			||||||
])
 | 
					])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -1060,7 +1043,7 @@ fi
 | 
				
			|||||||
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 | 
					INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 | 
				
			||||||
AC_SUBST([INSTALL_STRIP_PROGRAM])])
 | 
					AC_SUBST([INSTALL_STRIP_PROGRAM])])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2006-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2006-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -1079,7 +1062,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Check how to create a tarball.                            -*- Autoconf -*-
 | 
					# Check how to create a tarball.                            -*- Autoconf -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 2004-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 2004-2018 Free Software Foundation, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is free software; the Free Software Foundation
 | 
					# This file is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
 | 
				
			|||||||
@ -1,7 +1,7 @@
 | 
				
			|||||||
# Makefile.in generated by automake 1.15 from Makefile.am.
 | 
					# Makefile.in generated by automake 1.16.1 from Makefile.am.
 | 
				
			||||||
# @configure_input@
 | 
					# @configure_input@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1994-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This Makefile.in is free software; the Free Software Foundation
 | 
					# This Makefile.in is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -88,7 +88,7 @@ PRE_UNINSTALL = :
 | 
				
			|||||||
POST_UNINSTALL = :
 | 
					POST_UNINSTALL = :
 | 
				
			||||||
build_triplet = @build@
 | 
					build_triplet = @build@
 | 
				
			||||||
host_triplet = @host@
 | 
					host_triplet = @host@
 | 
				
			||||||
bin_PROGRAMS = execd$(EXEEXT) t01$(EXEEXT)
 | 
					bin_PROGRAMS = mio-execd$(EXEEXT) mio-t01$(EXEEXT)
 | 
				
			||||||
subdir = bin
 | 
					subdir = bin
 | 
				
			||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 | 
					ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 | 
				
			||||||
am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \
 | 
					am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_sign.m4 \
 | 
				
			||||||
@ -106,22 +106,26 @@ CONFIG_CLEAN_FILES =
 | 
				
			|||||||
CONFIG_CLEAN_VPATH_FILES =
 | 
					CONFIG_CLEAN_VPATH_FILES =
 | 
				
			||||||
am__installdirs = "$(DESTDIR)$(bindir)"
 | 
					am__installdirs = "$(DESTDIR)$(bindir)"
 | 
				
			||||||
PROGRAMS = $(bin_PROGRAMS)
 | 
					PROGRAMS = $(bin_PROGRAMS)
 | 
				
			||||||
am_execd_OBJECTS = execd-execd.$(OBJEXT)
 | 
					am_mio_execd_OBJECTS = mio_execd-execd.$(OBJEXT)
 | 
				
			||||||
execd_OBJECTS = $(am_execd_OBJECTS)
 | 
					mio_execd_OBJECTS = $(am_mio_execd_OBJECTS)
 | 
				
			||||||
am__DEPENDENCIES_1 =
 | 
					am__DEPENDENCIES_1 =
 | 
				
			||||||
am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
 | 
					am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
 | 
				
			||||||
 | 
					mio_execd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \
 | 
				
			||||||
 | 
						$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 | 
				
			||||||
AM_V_lt = $(am__v_lt_@AM_V@)
 | 
					AM_V_lt = $(am__v_lt_@AM_V@)
 | 
				
			||||||
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
 | 
					am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
 | 
				
			||||||
am__v_lt_0 = --silent
 | 
					am__v_lt_0 = --silent
 | 
				
			||||||
am__v_lt_1 = 
 | 
					am__v_lt_1 = 
 | 
				
			||||||
execd_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 | 
					mio_execd_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 | 
				
			||||||
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 | 
						$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 | 
				
			||||||
	$(execd_LDFLAGS) $(LDFLAGS) -o $@
 | 
						$(mio_execd_LDFLAGS) $(LDFLAGS) -o $@
 | 
				
			||||||
am_t01_OBJECTS = t01-t01.$(OBJEXT)
 | 
					am_mio_t01_OBJECTS = mio_t01-t01.$(OBJEXT)
 | 
				
			||||||
t01_OBJECTS = $(am_t01_OBJECTS)
 | 
					mio_t01_OBJECTS = $(am_mio_t01_OBJECTS)
 | 
				
			||||||
t01_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 | 
					mio_t01_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \
 | 
				
			||||||
 | 
						$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 | 
				
			||||||
 | 
					mio_t01_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 | 
				
			||||||
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 | 
						$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 | 
				
			||||||
	$(t01_LDFLAGS) $(LDFLAGS) -o $@
 | 
						$(mio_t01_LDFLAGS) $(LDFLAGS) -o $@
 | 
				
			||||||
AM_V_P = $(am__v_P_@AM_V@)
 | 
					AM_V_P = $(am__v_P_@AM_V@)
 | 
				
			||||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 | 
					am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 | 
				
			||||||
am__v_P_0 = false
 | 
					am__v_P_0 = false
 | 
				
			||||||
@ -136,7 +140,9 @@ am__v_at_0 = @
 | 
				
			|||||||
am__v_at_1 = 
 | 
					am__v_at_1 = 
 | 
				
			||||||
DEFAULT_INCLUDES = 
 | 
					DEFAULT_INCLUDES = 
 | 
				
			||||||
depcomp = $(SHELL) $(top_srcdir)/ac/depcomp
 | 
					depcomp = $(SHELL) $(top_srcdir)/ac/depcomp
 | 
				
			||||||
am__depfiles_maybe = depfiles
 | 
					am__maybe_remake_depfiles = depfiles
 | 
				
			||||||
 | 
					am__depfiles_remade = ./$(DEPDIR)/mio_execd-execd.Po \
 | 
				
			||||||
 | 
						./$(DEPDIR)/mio_t01-t01.Po
 | 
				
			||||||
am__mv = mv -f
 | 
					am__mv = mv -f
 | 
				
			||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 | 
					COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 | 
				
			||||||
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 | 
						$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 | 
				
			||||||
@ -156,8 +162,8 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
 | 
				
			|||||||
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 | 
					am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 | 
				
			||||||
am__v_CCLD_0 = @echo "  CCLD    " $@;
 | 
					am__v_CCLD_0 = @echo "  CCLD    " $@;
 | 
				
			||||||
am__v_CCLD_1 = 
 | 
					am__v_CCLD_1 = 
 | 
				
			||||||
SOURCES = $(execd_SOURCES) $(t01_SOURCES)
 | 
					SOURCES = $(mio_execd_SOURCES) $(mio_t01_SOURCES)
 | 
				
			||||||
DIST_SOURCES = $(execd_SOURCES) $(t01_SOURCES)
 | 
					DIST_SOURCES = $(mio_execd_SOURCES) $(mio_t01_SOURCES)
 | 
				
			||||||
am__can_run_installinfo = \
 | 
					am__can_run_installinfo = \
 | 
				
			||||||
  case $$AM_UPDATE_INFO_DIR in \
 | 
					  case $$AM_UPDATE_INFO_DIR in \
 | 
				
			||||||
    n|no|NO) false;; \
 | 
					    n|no|NO) false;; \
 | 
				
			||||||
@ -323,7 +329,6 @@ pdfdir = @pdfdir@
 | 
				
			|||||||
prefix = @prefix@
 | 
					prefix = @prefix@
 | 
				
			||||||
program_transform_name = @program_transform_name@
 | 
					program_transform_name = @program_transform_name@
 | 
				
			||||||
psdir = @psdir@
 | 
					psdir = @psdir@
 | 
				
			||||||
runstatedir = @runstatedir@
 | 
					 | 
				
			||||||
sbindir = @sbindir@
 | 
					sbindir = @sbindir@
 | 
				
			||||||
sharedstatedir = @sharedstatedir@
 | 
					sharedstatedir = @sharedstatedir@
 | 
				
			||||||
srcdir = @srcdir@
 | 
					srcdir = @srcdir@
 | 
				
			||||||
@ -341,19 +346,21 @@ CPPFLAGS_ALL_COMMON = \
 | 
				
			|||||||
	-I$(includedir)	
 | 
						-I$(includedir)	
 | 
				
			||||||
 | 
					
 | 
				
			||||||
LDFLAGS_ALL_COMMON = -L$(abs_builddir) -L$(abs_builddir)/../lib -L$(libdir)
 | 
					LDFLAGS_ALL_COMMON = -L$(abs_builddir) -L$(abs_builddir)/../lib -L$(libdir)
 | 
				
			||||||
CPPFLAGS_BIN_COMMON = $(CPPFLAGS_ALL_COMMON)
 | 
					
 | 
				
			||||||
LDFLAGS_BIN_COMMON = $(LDFLAGS_ALL_COMMON) -version-info 1:0:0 -no-undefined
 | 
					##################################################
 | 
				
			||||||
LIBADD_BIN_COMMON = $(LIBM) 
 | 
					# MAIN LIBRARY 
 | 
				
			||||||
execd_SOURCES = execd.c
 | 
					##################################################
 | 
				
			||||||
execd_CPPFLAGS = $(CPPFLAGS_ALL_COMMON)
 | 
					CPPFLAGS_LIB_COMMON = $(CPPFLAGS_ALL_COMMON)
 | 
				
			||||||
execd_LDFLAGS = $(LDFLAGS_ALL_COMMON)
 | 
					LDFLAGS_LIB_COMMON = $(LDFLAGS_ALL_COMMON) -version-info 1:0:0 -no-undefined
 | 
				
			||||||
execd_LDADD = $(LIBADD_BIN_COMMON) -lmio
 | 
					LIBADD_LIB_COMMON = $(LIBM)
 | 
				
			||||||
execd_DEPENDENCIES = ../lib/libmio.la
 | 
					mio_execd_SOURCES = execd.c
 | 
				
			||||||
t01_SOURCES = t01.c
 | 
					mio_execd_CPPFLAGS = $(CPPFLAGS_LIB_COMMON)
 | 
				
			||||||
t01_CPPFLAGS = $(CPPFLAGS_ALL_COMMON)
 | 
					mio_execd_LDFLAGS = $(LDFLAGS_LIB_COMMON)
 | 
				
			||||||
t01_LDFLAGS = $(LDFLAGS_ALL_COMMON)
 | 
					mio_execd_LDADD = $(LIBADD_LIB_COMMON) -lmio $(SSL_LIBS) $(SOCKET_LIBS) $(SENDFILE_LIBS)
 | 
				
			||||||
t01_LDADD = $(LIBADD_BIN_COMMON) -lmio
 | 
					mio_t01_SOURCES = t01.c
 | 
				
			||||||
t01_DEPENDENCIES = ../lib/libmio.la
 | 
					mio_t01_CPPFLAGS = $(CPPFLAGS_LIB_COMMON)
 | 
				
			||||||
 | 
					mio_t01_LDFLAGS = $(LDFLAGS_LIB_COMMON)
 | 
				
			||||||
 | 
					mio_t01_LDADD = $(LIBADD_LIB_COMMON) -lmio $(SSL_LIBS) $(SOCKET_LIBS) $(SENDFILE_LIBS)
 | 
				
			||||||
all: all-am
 | 
					all: all-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.SUFFIXES:
 | 
					.SUFFIXES:
 | 
				
			||||||
@ -375,8 +382,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 | 
				
			|||||||
	  *config.status*) \
 | 
						  *config.status*) \
 | 
				
			||||||
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 | 
						    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 | 
				
			||||||
	  *) \
 | 
						  *) \
 | 
				
			||||||
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 | 
						    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
 | 
				
			||||||
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 | 
						    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 | 
				
			||||||
	esac;
 | 
						esac;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 | 
					$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 | 
				
			||||||
@ -437,13 +444,13 @@ clean-binPROGRAMS:
 | 
				
			|||||||
	echo " rm -f" $$list; \
 | 
						echo " rm -f" $$list; \
 | 
				
			||||||
	rm -f $$list
 | 
						rm -f $$list
 | 
				
			||||||
 | 
					
 | 
				
			||||||
execd$(EXEEXT): $(execd_OBJECTS) $(execd_DEPENDENCIES) $(EXTRA_execd_DEPENDENCIES) 
 | 
					mio-execd$(EXEEXT): $(mio_execd_OBJECTS) $(mio_execd_DEPENDENCIES) $(EXTRA_mio_execd_DEPENDENCIES) 
 | 
				
			||||||
	@rm -f execd$(EXEEXT)
 | 
						@rm -f mio-execd$(EXEEXT)
 | 
				
			||||||
	$(AM_V_CCLD)$(execd_LINK) $(execd_OBJECTS) $(execd_LDADD) $(LIBS)
 | 
						$(AM_V_CCLD)$(mio_execd_LINK) $(mio_execd_OBJECTS) $(mio_execd_LDADD) $(LIBS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
t01$(EXEEXT): $(t01_OBJECTS) $(t01_DEPENDENCIES) $(EXTRA_t01_DEPENDENCIES) 
 | 
					mio-t01$(EXEEXT): $(mio_t01_OBJECTS) $(mio_t01_DEPENDENCIES) $(EXTRA_mio_t01_DEPENDENCIES) 
 | 
				
			||||||
	@rm -f t01$(EXEEXT)
 | 
						@rm -f mio-t01$(EXEEXT)
 | 
				
			||||||
	$(AM_V_CCLD)$(t01_LINK) $(t01_OBJECTS) $(t01_LDADD) $(LIBS)
 | 
						$(AM_V_CCLD)$(mio_t01_LINK) $(mio_t01_OBJECTS) $(mio_t01_LDADD) $(LIBS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
mostlyclean-compile:
 | 
					mostlyclean-compile:
 | 
				
			||||||
	-rm -f *.$(OBJEXT)
 | 
						-rm -f *.$(OBJEXT)
 | 
				
			||||||
@ -451,8 +458,14 @@ mostlyclean-compile:
 | 
				
			|||||||
distclean-compile:
 | 
					distclean-compile:
 | 
				
			||||||
	-rm -f *.tab.c
 | 
						-rm -f *.tab.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/execd-execd.Po@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mio_execd-execd.Po@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t01-t01.Po@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mio_t01-t01.Po@am__quote@ # am--include-marker
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(am__depfiles_remade):
 | 
				
			||||||
 | 
						@$(MKDIR_P) $(@D)
 | 
				
			||||||
 | 
						@echo '# dummy' >$@-t && $(am__mv) $@-t $@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					am--depfiles: $(am__depfiles_remade)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.c.o:
 | 
					.c.o:
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
 | 
					@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
 | 
				
			||||||
@ -478,33 +491,33 @@ distclean-compile:
 | 
				
			|||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
				
			||||||
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
 | 
					@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
 | 
				
			||||||
 | 
					
 | 
				
			||||||
execd-execd.o: execd.c
 | 
					mio_execd-execd.o: execd.c
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT execd-execd.o -MD -MP -MF $(DEPDIR)/execd-execd.Tpo -c -o execd-execd.o `test -f 'execd.c' || echo '$(srcdir)/'`execd.c
 | 
					@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mio_execd-execd.o -MD -MP -MF $(DEPDIR)/mio_execd-execd.Tpo -c -o mio_execd-execd.o `test -f 'execd.c' || echo '$(srcdir)/'`execd.c
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/execd-execd.Tpo $(DEPDIR)/execd-execd.Po
 | 
					@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/mio_execd-execd.Tpo $(DEPDIR)/mio_execd-execd.Po
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='execd.c' object='execd-execd.o' libtool=no @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='execd.c' object='mio_execd-execd.o' libtool=no @AMDEPBACKSLASH@
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
				
			||||||
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o execd-execd.o `test -f 'execd.c' || echo '$(srcdir)/'`execd.c
 | 
					@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mio_execd-execd.o `test -f 'execd.c' || echo '$(srcdir)/'`execd.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
execd-execd.obj: execd.c
 | 
					mio_execd-execd.obj: execd.c
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT execd-execd.obj -MD -MP -MF $(DEPDIR)/execd-execd.Tpo -c -o execd-execd.obj `if test -f 'execd.c'; then $(CYGPATH_W) 'execd.c'; else $(CYGPATH_W) '$(srcdir)/execd.c'; fi`
 | 
					@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mio_execd-execd.obj -MD -MP -MF $(DEPDIR)/mio_execd-execd.Tpo -c -o mio_execd-execd.obj `if test -f 'execd.c'; then $(CYGPATH_W) 'execd.c'; else $(CYGPATH_W) '$(srcdir)/execd.c'; fi`
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/execd-execd.Tpo $(DEPDIR)/execd-execd.Po
 | 
					@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/mio_execd-execd.Tpo $(DEPDIR)/mio_execd-execd.Po
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='execd.c' object='execd-execd.obj' libtool=no @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='execd.c' object='mio_execd-execd.obj' libtool=no @AMDEPBACKSLASH@
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
				
			||||||
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o execd-execd.obj `if test -f 'execd.c'; then $(CYGPATH_W) 'execd.c'; else $(CYGPATH_W) '$(srcdir)/execd.c'; fi`
 | 
					@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_execd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mio_execd-execd.obj `if test -f 'execd.c'; then $(CYGPATH_W) 'execd.c'; else $(CYGPATH_W) '$(srcdir)/execd.c'; fi`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
t01-t01.o: t01.c
 | 
					mio_t01-t01.o: t01.c
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT t01-t01.o -MD -MP -MF $(DEPDIR)/t01-t01.Tpo -c -o t01-t01.o `test -f 't01.c' || echo '$(srcdir)/'`t01.c
 | 
					@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mio_t01-t01.o -MD -MP -MF $(DEPDIR)/mio_t01-t01.Tpo -c -o mio_t01-t01.o `test -f 't01.c' || echo '$(srcdir)/'`t01.c
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/t01-t01.Tpo $(DEPDIR)/t01-t01.Po
 | 
					@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/mio_t01-t01.Tpo $(DEPDIR)/mio_t01-t01.Po
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='t01.c' object='t01-t01.o' libtool=no @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='t01.c' object='mio_t01-t01.o' libtool=no @AMDEPBACKSLASH@
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
				
			||||||
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o t01-t01.o `test -f 't01.c' || echo '$(srcdir)/'`t01.c
 | 
					@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mio_t01-t01.o `test -f 't01.c' || echo '$(srcdir)/'`t01.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
t01-t01.obj: t01.c
 | 
					mio_t01-t01.obj: t01.c
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT t01-t01.obj -MD -MP -MF $(DEPDIR)/t01-t01.Tpo -c -o t01-t01.obj `if test -f 't01.c'; then $(CYGPATH_W) 't01.c'; else $(CYGPATH_W) '$(srcdir)/t01.c'; fi`
 | 
					@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mio_t01-t01.obj -MD -MP -MF $(DEPDIR)/mio_t01-t01.Tpo -c -o mio_t01-t01.obj `if test -f 't01.c'; then $(CYGPATH_W) 't01.c'; else $(CYGPATH_W) '$(srcdir)/t01.c'; fi`
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/t01-t01.Tpo $(DEPDIR)/t01-t01.Po
 | 
					@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/mio_t01-t01.Tpo $(DEPDIR)/mio_t01-t01.Po
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='t01.c' object='t01-t01.obj' libtool=no @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='t01.c' object='mio_t01-t01.obj' libtool=no @AMDEPBACKSLASH@
 | 
				
			||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
					@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 | 
				
			||||||
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o t01-t01.obj `if test -f 't01.c'; then $(CYGPATH_W) 't01.c'; else $(CYGPATH_W) '$(srcdir)/t01.c'; fi`
 | 
					@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mio_t01_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mio_t01-t01.obj `if test -f 't01.c'; then $(CYGPATH_W) 't01.c'; else $(CYGPATH_W) '$(srcdir)/t01.c'; fi`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
mostlyclean-libtool:
 | 
					mostlyclean-libtool:
 | 
				
			||||||
	-rm -f *.lo
 | 
						-rm -f *.lo
 | 
				
			||||||
@ -564,7 +577,10 @@ cscopelist-am: $(am__tagged_files)
 | 
				
			|||||||
distclean-tags:
 | 
					distclean-tags:
 | 
				
			||||||
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 | 
						-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 | 
				
			||||||
 | 
					
 | 
				
			||||||
distdir: $(DISTFILES)
 | 
					distdir: $(BUILT_SOURCES)
 | 
				
			||||||
 | 
						$(MAKE) $(AM_MAKEFLAGS) distdir-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					distdir-am: $(DISTFILES)
 | 
				
			||||||
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
						@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
				
			||||||
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
						topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
				
			||||||
	list='$(DISTFILES)'; \
 | 
						list='$(DISTFILES)'; \
 | 
				
			||||||
@ -636,7 +652,8 @@ clean: clean-am
 | 
				
			|||||||
clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
 | 
					clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
distclean: distclean-am
 | 
					distclean: distclean-am
 | 
				
			||||||
	-rm -rf ./$(DEPDIR)
 | 
							-rm -f ./$(DEPDIR)/mio_execd-execd.Po
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/mio_t01-t01.Po
 | 
				
			||||||
	-rm -f Makefile
 | 
						-rm -f Makefile
 | 
				
			||||||
distclean-am: clean-am distclean-compile distclean-generic \
 | 
					distclean-am: clean-am distclean-compile distclean-generic \
 | 
				
			||||||
	distclean-tags
 | 
						distclean-tags
 | 
				
			||||||
@ -682,7 +699,8 @@ install-ps-am:
 | 
				
			|||||||
installcheck-am:
 | 
					installcheck-am:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
maintainer-clean: maintainer-clean-am
 | 
					maintainer-clean: maintainer-clean-am
 | 
				
			||||||
	-rm -rf ./$(DEPDIR)
 | 
							-rm -f ./$(DEPDIR)/mio_execd-execd.Po
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/mio_t01-t01.Po
 | 
				
			||||||
	-rm -f Makefile
 | 
						-rm -f Makefile
 | 
				
			||||||
maintainer-clean-am: distclean-am maintainer-clean-generic
 | 
					maintainer-clean-am: distclean-am maintainer-clean-generic
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -703,7 +721,7 @@ uninstall-am: uninstall-binPROGRAMS
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
.MAKE: install-am install-strip
 | 
					.MAKE: install-am install-strip
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
 | 
					.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
 | 
				
			||||||
	clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
 | 
						clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
 | 
				
			||||||
	ctags ctags-am distclean distclean-compile distclean-generic \
 | 
						ctags ctags-am distclean distclean-compile distclean-generic \
 | 
				
			||||||
	distclean-libtool distclean-tags distdir dvi dvi-am html \
 | 
						distclean-libtool distclean-tags distdir dvi dvi-am html \
 | 
				
			||||||
 | 
				
			|||||||
@ -374,6 +374,7 @@ static int setup_arp_tester (mio_t* mio)
 | 
				
			|||||||
	mio_dev_sck_make_t sck_make;
 | 
						mio_dev_sck_make_t sck_make;
 | 
				
			||||||
	mio_dev_sck_t* sck;
 | 
						mio_dev_sck_t* sck;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	memset (&sck_make, 0, MIO_SIZEOF(sck_make));
 | 
						memset (&sck_make, 0, MIO_SIZEOF(sck_make));
 | 
				
			||||||
	sck_make.type = MIO_DEV_SCK_ARP;
 | 
						sck_make.type = MIO_DEV_SCK_ARP;
 | 
				
			||||||
	//sck_make.type = MIO_DEV_SCK_ARP_DGRAM;
 | 
						//sck_make.type = MIO_DEV_SCK_ARP_DGRAM;
 | 
				
			||||||
@ -388,6 +389,7 @@ static int setup_arp_tester (mio_t* mio)
 | 
				
			|||||||
		return -1;
 | 
							return -1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	//mio_sckaddr_initforeth (ðdst, if_nametoindex("enp0s25.3"), (mio_ethaddr_t*)"\xFF\xFF\xFF\xFF\xFF\xFF");
 | 
						//mio_sckaddr_initforeth (ðdst, if_nametoindex("enp0s25.3"), (mio_ethaddr_t*)"\xFF\xFF\xFF\xFF\xFF\xFF");
 | 
				
			||||||
	//mio_sckaddr_initforeth (ðdst, if_nametoindex("enp0s25.3"), (mio_ethaddr_t*)"\xAA\xBB\xFF\xCC\xDD\xFF");
 | 
						//mio_sckaddr_initforeth (ðdst, if_nametoindex("enp0s25.3"), (mio_ethaddr_t*)"\xAA\xBB\xFF\xCC\xDD\xFF");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -600,6 +602,19 @@ static int setup_ping4_tester (mio_t* mio)
 | 
				
			|||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* ========================================================================= */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static void on_dnc_resolve(mio_svc_dnc_t* dnc, mio_dns_msg_t* reqmsg, mio_errnum_t status, const void* data, mio_oow_t dlen)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if (status == MIO_ENOERR)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							printf ("XXXXXXXXXXXXXXXXx RECEIVED XXXXXXXXXXXXXXXXXXXXXXXXX\n");
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							printf ("XXXXXXXXXXXXXXXXx NO REPLY XXXXXXXXXXXXXXXXXXXXXXXXX\n");
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* ========================================================================= */
 | 
					/* ========================================================================= */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -733,6 +748,7 @@ int main (int argc, char* argv[])
 | 
				
			|||||||
		goto oops;
 | 
							goto oops;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* -------------------------------------------------------------- */
 | 
						/* -------------------------------------------------------------- */
 | 
				
			||||||
	memset (&tcp_make, 0, MIO_SIZEOF(tcp_make));
 | 
						memset (&tcp_make, 0, MIO_SIZEOF(tcp_make));
 | 
				
			||||||
	tcp_make.type = MIO_DEV_SCK_TCP4;
 | 
						tcp_make.type = MIO_DEV_SCK_TCP4;
 | 
				
			||||||
@ -750,6 +766,7 @@ int main (int argc, char* argv[])
 | 
				
			|||||||
	ts = (tcp_server_t*)(tcp[2] + 1);
 | 
						ts = (tcp_server_t*)(tcp[2] + 1);
 | 
				
			||||||
	ts->tally = 0;
 | 
						ts->tally = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	memset (&tcp_bind, 0, MIO_SIZEOF(tcp_bind));
 | 
						memset (&tcp_bind, 0, MIO_SIZEOF(tcp_bind));
 | 
				
			||||||
	mio_sckaddr_initforip4 (&tcp_bind.localaddr, 1235, MIO_NULL);
 | 
						mio_sckaddr_initforip4 (&tcp_bind.localaddr, 1235, MIO_NULL);
 | 
				
			||||||
	tcp_bind.options = MIO_DEV_SCK_BIND_REUSEADDR /*| MIO_DEV_SCK_BIND_REUSEPORT |*/;
 | 
						tcp_bind.options = MIO_DEV_SCK_BIND_REUSEADDR /*| MIO_DEV_SCK_BIND_REUSEPORT |*/;
 | 
				
			||||||
@ -773,6 +790,7 @@ int main (int argc, char* argv[])
 | 
				
			|||||||
		goto oops;
 | 
							goto oops;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	//mio_dev_sck_sendfile (tcp[2], fd, offset, count);
 | 
						//mio_dev_sck_sendfile (tcp[2], fd, offset, count);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	setup_arp_tester(mio);
 | 
						setup_arp_tester(mio);
 | 
				
			||||||
@ -811,8 +829,8 @@ for (i = 0; i < 5; i++)
 | 
				
			|||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_dnsc_t* dnsc;
 | 
						mio_svc_dnc_t* dnc;
 | 
				
			||||||
	dnsc = mio_dnsc_start (mio/*, "8.8.8.8:53,1.1.1.1:53"*/); /* option - send to all, send one by one */
 | 
						dnc = mio_svc_dnc_start (mio/*, "8.8.8.8:53,1.1.1.1:53"*/); /* option - send to all, send one by one */
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		mio_dns_bqr_t qrs[] = 
 | 
							mio_dns_bqr_t qrs[] = 
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@ -876,14 +894,19 @@ for (i = 0; i < 5; i++)
 | 
				
			|||||||
			MIO_DNS_RCODE_BADCOOKIE /* rcode */
 | 
								MIO_DNS_RCODE_BADCOOKIE /* rcode */
 | 
				
			||||||
		}; 
 | 
							}; 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		mio_dnsc_sendreq (dnsc, &qhdr, qrs, MIO_COUNTOF(qrs), &qedns);
 | 
							//mio_svc_dnc_sendreq (dnc, &qhdr, qrs, MIO_COUNTOF(qrs), &qedns, MIO_NULL);
 | 
				
			||||||
		mio_dnsc_sendmsg (dnsc, &rhdr, qrs, MIO_COUNTOF(qrs), rrs, MIO_COUNTOF(rrs), &qedns);
 | 
							mio_svc_dnc_sendmsg (dnc, &rhdr, qrs, MIO_COUNTOF(qrs), rrs, MIO_COUNTOF(rrs), &qedns, MIO_NULL);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if (mio_svc_dnc_resolve(dnc, "code.miflux.com", MIO_DNS_QTYPE_A, on_dnc_resolve) <= -1)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						printf ("resolve attempt failure ---> code.miflux.com\n");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	mio_loop (mio);
 | 
						mio_loop (mio);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* TODO: let mio close it ... dnsc is svc. sck is dev. */
 | 
						/* TODO: let mio close it ... dnc is svc. sck is dev. */
 | 
				
			||||||
	mio_dnsc_stop (dnsc);
 | 
						mio_svc_dnc_stop (dnc);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	g_mio = MIO_NULL;
 | 
						g_mio = MIO_NULL;
 | 
				
			||||||
@ -911,7 +934,7 @@ int main (int argc, char* argv[])
 | 
				
			|||||||
	mio_dev_sck_make_t tcp_make;
 | 
						mio_dev_sck_make_t tcp_make;
 | 
				
			||||||
	mio_dev_sck_connect_t tcp_conn;
 | 
						mio_dev_sck_connect_t tcp_conn;
 | 
				
			||||||
	tcp_server_t* ts;
 | 
						tcp_server_t* ts;
 | 
				
			||||||
	mio_dnsc_t dnsc = MIO_NULL;
 | 
						mio_svc_dnc_t dnc = MIO_NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	mio = mio_open(&mmgr, 0, MIO_NULL, 512, MIO_NULL);
 | 
						mio = mio_open(&mmgr, 0, MIO_NULL, 512, MIO_NULL);
 | 
				
			||||||
	if (!mio)
 | 
						if (!mio)
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										209
									
								
								mio/configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										209
									
								
								mio/configure
									
									
									
									
										vendored
									
									
								
							@ -713,7 +713,6 @@ am__nodep
 | 
				
			|||||||
AMDEPBACKSLASH
 | 
					AMDEPBACKSLASH
 | 
				
			||||||
AMDEP_FALSE
 | 
					AMDEP_FALSE
 | 
				
			||||||
AMDEP_TRUE
 | 
					AMDEP_TRUE
 | 
				
			||||||
am__quote
 | 
					 | 
				
			||||||
am__include
 | 
					am__include
 | 
				
			||||||
DEPDIR
 | 
					DEPDIR
 | 
				
			||||||
OBJEXT
 | 
					OBJEXT
 | 
				
			||||||
@ -789,7 +788,8 @@ PACKAGE_VERSION
 | 
				
			|||||||
PACKAGE_TARNAME
 | 
					PACKAGE_TARNAME
 | 
				
			||||||
PACKAGE_NAME
 | 
					PACKAGE_NAME
 | 
				
			||||||
PATH_SEPARATOR
 | 
					PATH_SEPARATOR
 | 
				
			||||||
SHELL'
 | 
					SHELL
 | 
				
			||||||
 | 
					am__quote'
 | 
				
			||||||
ac_subst_files=''
 | 
					ac_subst_files=''
 | 
				
			||||||
ac_user_opts='
 | 
					ac_user_opts='
 | 
				
			||||||
enable_option_checking
 | 
					enable_option_checking
 | 
				
			||||||
@ -2728,7 +2728,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 | 
				
			|||||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
 | 
					ac_compiler_gnu=$ac_cv_c_compiler_gnu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
am__api_version='1.15'
 | 
					am__api_version='1.16'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Find a good install program.  We prefer a C program (faster),
 | 
					# Find a good install program.  We prefer a C program (faster),
 | 
				
			||||||
# so one script is as good as another.  But avoid the broken or
 | 
					# so one script is as good as another.  But avoid the broken or
 | 
				
			||||||
@ -3244,8 +3244,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# For better backward compatibility.  To be removed once Automake 1.9.x
 | 
					# For better backward compatibility.  To be removed once Automake 1.9.x
 | 
				
			||||||
# dies out for good.  For more background, see:
 | 
					# dies out for good.  For more background, see:
 | 
				
			||||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 | 
					# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 | 
				
			||||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 | 
					# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 | 
				
			||||||
mkdir_p='$(MKDIR_P)'
 | 
					mkdir_p='$(MKDIR_P)'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# We need awk for the "check" target (and possibly the TAP driver).  The
 | 
					# We need awk for the "check" target (and possibly the TAP driver).  The
 | 
				
			||||||
@ -3296,7 +3296,7 @@ END
 | 
				
			|||||||
Aborting the configuration process, to ensure you take notice of the issue.
 | 
					Aborting the configuration process, to ensure you take notice of the issue.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
You can download and install GNU coreutils to get an 'rm' implementation
 | 
					You can download and install GNU coreutils to get an 'rm' implementation
 | 
				
			||||||
that behaves properly: <http://www.gnu.org/software/coreutils/>.
 | 
					that behaves properly: <https://www.gnu.org/software/coreutils/>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
If you want to complete the configuration process using your problematic
 | 
					If you want to complete the configuration process using your problematic
 | 
				
			||||||
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
 | 
					'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
 | 
				
			||||||
@ -3311,45 +3311,45 @@ DEPDIR="${am__leading_dot}deps"
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
ac_config_commands="$ac_config_commands depfiles"
 | 
					ac_config_commands="$ac_config_commands depfiles"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
 | 
				
			||||||
am_make=${MAKE-make}
 | 
					$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
 | 
				
			||||||
cat > confinc << 'END'
 | 
					cat > confinc.mk << 'END'
 | 
				
			||||||
am__doit:
 | 
					am__doit:
 | 
				
			||||||
	@echo this is the am__doit target
 | 
						@echo this is the am__doit target >confinc.out
 | 
				
			||||||
.PHONY: am__doit
 | 
					.PHONY: am__doit
 | 
				
			||||||
END
 | 
					END
 | 
				
			||||||
# If we don't find an include directive, just comment out the code.
 | 
					 | 
				
			||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
 | 
					 | 
				
			||||||
$as_echo_n "checking for style of include used by $am_make... " >&6; }
 | 
					 | 
				
			||||||
am__include="#"
 | 
					am__include="#"
 | 
				
			||||||
am__quote=
 | 
					am__quote=
 | 
				
			||||||
_am_result=none
 | 
					# BSD make does it like this.
 | 
				
			||||||
# First try GNU make style include.
 | 
					echo '.include "confinc.mk" # ignored' > confmf.BSD
 | 
				
			||||||
echo "include confinc" > confmf
 | 
					# Other make implementations (GNU, Solaris 10, AIX) do it like this.
 | 
				
			||||||
# Ignore all kinds of additional output from 'make'.
 | 
					echo 'include confinc.mk # ignored' > confmf.GNU
 | 
				
			||||||
case `$am_make -s -f confmf 2> /dev/null` in #(
 | 
					_am_result=no
 | 
				
			||||||
*the\ am__doit\ target*)
 | 
					for s in GNU BSD; do
 | 
				
			||||||
  am__include=include
 | 
					  { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
 | 
				
			||||||
  am__quote=
 | 
					   (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
 | 
				
			||||||
  _am_result=GNU
 | 
					   ac_status=$?
 | 
				
			||||||
 | 
					   echo "$as_me:$LINENO: \$? = $ac_status" >&5
 | 
				
			||||||
 | 
					   (exit $ac_status); }
 | 
				
			||||||
 | 
					  case $?:`cat confinc.out 2>/dev/null` in #(
 | 
				
			||||||
 | 
					  '0:this is the am__doit target') :
 | 
				
			||||||
 | 
					    case $s in #(
 | 
				
			||||||
 | 
					  BSD) :
 | 
				
			||||||
 | 
					    am__include='.include' am__quote='"' ;; #(
 | 
				
			||||||
 | 
					  *) :
 | 
				
			||||||
 | 
					    am__include='include' am__quote='' ;;
 | 
				
			||||||
 | 
					esac ;; #(
 | 
				
			||||||
 | 
					  *) :
 | 
				
			||||||
     ;;
 | 
					     ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
# Now try BSD make style include.
 | 
					  if test "$am__include" != "#"; then
 | 
				
			||||||
if test "$am__include" = "#"; then
 | 
					    _am_result="yes ($s style)"
 | 
				
			||||||
   echo '.include "confinc"' > confmf
 | 
					    break
 | 
				
			||||||
   case `$am_make -s -f confmf 2> /dev/null` in #(
 | 
					  fi
 | 
				
			||||||
   *the\ am__doit\ target*)
 | 
					done
 | 
				
			||||||
     am__include=.include
 | 
					rm -f confinc.* confmf.*
 | 
				
			||||||
     am__quote="\""
 | 
					{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
 | 
				
			||||||
     _am_result=BSD
 | 
					$as_echo "${_am_result}" >&6; }
 | 
				
			||||||
     ;;
 | 
					 | 
				
			||||||
   esac
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
 | 
					 | 
				
			||||||
$as_echo "$_am_result" >&6; }
 | 
					 | 
				
			||||||
rm -f confinc confmf
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Check whether --enable-dependency-tracking was given.
 | 
					# Check whether --enable-dependency-tracking was given.
 | 
				
			||||||
if test "${enable_dependency_tracking+set}" = set; then :
 | 
					if test "${enable_dependency_tracking+set}" = set; then :
 | 
				
			||||||
@ -22483,7 +22483,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 | 
				
			|||||||
#
 | 
					#
 | 
				
			||||||
# INIT-COMMANDS
 | 
					# INIT-COMMANDS
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
 | 
					AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# The HP-UX ksh and POSIX shell print the target directory to stdout
 | 
					# The HP-UX ksh and POSIX shell print the target directory to stdout
 | 
				
			||||||
@ -23479,29 +23479,35 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
 | 
				
			|||||||
  # Older Autoconf quotes --file arguments for eval, but not when files
 | 
					  # Older Autoconf quotes --file arguments for eval, but not when files
 | 
				
			||||||
  # are listed without --file.  Let's play safe and only enable the eval
 | 
					  # are listed without --file.  Let's play safe and only enable the eval
 | 
				
			||||||
  # if we detect the quoting.
 | 
					  # if we detect the quoting.
 | 
				
			||||||
  case $CONFIG_FILES in
 | 
					  # TODO: see whether this extra hack can be removed once we start
 | 
				
			||||||
  *\'*) eval set x "$CONFIG_FILES" ;;
 | 
					  # requiring Autoconf 2.70 or later.
 | 
				
			||||||
  *)   set x $CONFIG_FILES ;;
 | 
					  case $CONFIG_FILES in #(
 | 
				
			||||||
  esac
 | 
					  *\'*) :
 | 
				
			||||||
 | 
					    eval set x "$CONFIG_FILES" ;; #(
 | 
				
			||||||
 | 
					  *) :
 | 
				
			||||||
 | 
					    set x $CONFIG_FILES ;; #(
 | 
				
			||||||
 | 
					  *) :
 | 
				
			||||||
 | 
					     ;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
  shift
 | 
					  shift
 | 
				
			||||||
  for mf
 | 
					  # Used to flag and report bootstrapping failures.
 | 
				
			||||||
 | 
					  am_rc=0
 | 
				
			||||||
 | 
					  for am_mf
 | 
				
			||||||
  do
 | 
					  do
 | 
				
			||||||
    # Strip MF so we end up with the name of the file.
 | 
					    # Strip MF so we end up with the name of the file.
 | 
				
			||||||
    mf=`echo "$mf" | sed -e 's/:.*$//'`
 | 
					    am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
 | 
				
			||||||
    # Check whether this is an Automake generated Makefile or not.
 | 
					    # Check whether this is an Automake generated Makefile which includes
 | 
				
			||||||
    # We used to match only the files named 'Makefile.in', but
 | 
					    # dependency-tracking related rules and includes.
 | 
				
			||||||
    # some people rename them; so instead we look at the file content.
 | 
					    # Grep'ing the whole file directly is not great: AIX grep has a line
 | 
				
			||||||
    # Grep'ing the first line is not enough: some people post-process
 | 
					 | 
				
			||||||
    # each Makefile.in and add a new line on top of each file to say so.
 | 
					 | 
				
			||||||
    # Grep'ing the whole file is not good either: AIX grep has a line
 | 
					 | 
				
			||||||
    # limit of 2048, but all sed's we know have understand at least 4000.
 | 
					    # limit of 2048, but all sed's we know have understand at least 4000.
 | 
				
			||||||
    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
 | 
					    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
 | 
				
			||||||
      dirpart=`$as_dirname -- "$mf" ||
 | 
					      || continue
 | 
				
			||||||
$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 | 
					    am_dirpart=`$as_dirname -- "$am_mf" ||
 | 
				
			||||||
	 X"$mf" : 'X\(//\)[^/]' \| \
 | 
					$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 | 
				
			||||||
	 X"$mf" : 'X\(//\)$' \| \
 | 
						 X"$am_mf" : 'X\(//\)[^/]' \| \
 | 
				
			||||||
	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
 | 
						 X"$am_mf" : 'X\(//\)$' \| \
 | 
				
			||||||
$as_echo X"$mf" |
 | 
						 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
 | 
				
			||||||
 | 
					$as_echo X"$am_mf" |
 | 
				
			||||||
    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 | 
					    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 | 
				
			||||||
	    s//\1/
 | 
						    s//\1/
 | 
				
			||||||
	    q
 | 
						    q
 | 
				
			||||||
@ -23519,53 +23525,48 @@ $as_echo X"$mf" |
 | 
				
			|||||||
	    q
 | 
						    q
 | 
				
			||||||
	  }
 | 
						  }
 | 
				
			||||||
	  s/.*/./; q'`
 | 
						  s/.*/./; q'`
 | 
				
			||||||
    else
 | 
					    am_filepart=`$as_basename -- "$am_mf" ||
 | 
				
			||||||
      continue
 | 
					$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
 | 
				
			||||||
 | 
						 X"$am_mf" : 'X\(//\)$' \| \
 | 
				
			||||||
 | 
						 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
 | 
				
			||||||
 | 
					$as_echo X/"$am_mf" |
 | 
				
			||||||
 | 
					    sed '/^.*\/\([^/][^/]*\)\/*$/{
 | 
				
			||||||
 | 
						    s//\1/
 | 
				
			||||||
 | 
						    q
 | 
				
			||||||
 | 
						  }
 | 
				
			||||||
 | 
						  /^X\/\(\/\/\)$/{
 | 
				
			||||||
 | 
						    s//\1/
 | 
				
			||||||
 | 
						    q
 | 
				
			||||||
 | 
						  }
 | 
				
			||||||
 | 
						  /^X\/\(\/\).*/{
 | 
				
			||||||
 | 
						    s//\1/
 | 
				
			||||||
 | 
						    q
 | 
				
			||||||
 | 
						  }
 | 
				
			||||||
 | 
						  s/.*/./; q'`
 | 
				
			||||||
 | 
					    { echo "$as_me:$LINENO: cd "$am_dirpart" \
 | 
				
			||||||
 | 
					      && sed -e '/# am--include-marker/d' "$am_filepart" \
 | 
				
			||||||
 | 
					        | $MAKE -f - am--depfiles" >&5
 | 
				
			||||||
 | 
					   (cd "$am_dirpart" \
 | 
				
			||||||
 | 
					      && sed -e '/# am--include-marker/d' "$am_filepart" \
 | 
				
			||||||
 | 
					        | $MAKE -f - am--depfiles) >&5 2>&5
 | 
				
			||||||
 | 
					   ac_status=$?
 | 
				
			||||||
 | 
					   echo "$as_me:$LINENO: \$? = $ac_status" >&5
 | 
				
			||||||
 | 
					   (exit $ac_status); } || am_rc=$?
 | 
				
			||||||
 | 
					  done
 | 
				
			||||||
 | 
					  if test $am_rc -ne 0; then
 | 
				
			||||||
 | 
					    { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 | 
				
			||||||
 | 
					$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 | 
				
			||||||
 | 
					as_fn_error $? "Something went wrong bootstrapping makefile fragments
 | 
				
			||||||
 | 
					    for automatic dependency tracking.  Try re-running configure with the
 | 
				
			||||||
 | 
					    '--disable-dependency-tracking' option to at least be able to build
 | 
				
			||||||
 | 
					    the package (albeit without support for automatic dependency tracking).
 | 
				
			||||||
 | 
					See \`config.log' for more details" "$LINENO" 5; }
 | 
				
			||||||
  fi
 | 
					  fi
 | 
				
			||||||
    # Extract the definition of DEPDIR, am__include, and am__quote
 | 
					  { am_dirpart=; unset am_dirpart;}
 | 
				
			||||||
    # from the Makefile without running 'make'.
 | 
					  { am_filepart=; unset am_filepart;}
 | 
				
			||||||
    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
 | 
					  { am_mf=; unset am_mf;}
 | 
				
			||||||
    test -z "$DEPDIR" && continue
 | 
					  { am_rc=; unset am_rc;}
 | 
				
			||||||
    am__include=`sed -n 's/^am__include = //p' < "$mf"`
 | 
					  rm -f conftest-deps.mk
 | 
				
			||||||
    test -z "$am__include" && continue
 | 
					 | 
				
			||||||
    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
 | 
					 | 
				
			||||||
    # Find all dependency output files, they are included files with
 | 
					 | 
				
			||||||
    # $(DEPDIR) in their names.  We invoke sed twice because it is the
 | 
					 | 
				
			||||||
    # simplest approach to changing $(DEPDIR) to its actual value in the
 | 
					 | 
				
			||||||
    # expansion.
 | 
					 | 
				
			||||||
    for file in `sed -n "
 | 
					 | 
				
			||||||
      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
 | 
					 | 
				
			||||||
	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
 | 
					 | 
				
			||||||
      # Make sure the directory exists.
 | 
					 | 
				
			||||||
      test -f "$dirpart/$file" && continue
 | 
					 | 
				
			||||||
      fdir=`$as_dirname -- "$file" ||
 | 
					 | 
				
			||||||
$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 | 
					 | 
				
			||||||
	 X"$file" : 'X\(//\)[^/]' \| \
 | 
					 | 
				
			||||||
	 X"$file" : 'X\(//\)$' \| \
 | 
					 | 
				
			||||||
	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
 | 
					 | 
				
			||||||
$as_echo X"$file" |
 | 
					 | 
				
			||||||
    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 | 
					 | 
				
			||||||
	    s//\1/
 | 
					 | 
				
			||||||
	    q
 | 
					 | 
				
			||||||
	  }
 | 
					 | 
				
			||||||
	  /^X\(\/\/\)[^/].*/{
 | 
					 | 
				
			||||||
	    s//\1/
 | 
					 | 
				
			||||||
	    q
 | 
					 | 
				
			||||||
	  }
 | 
					 | 
				
			||||||
	  /^X\(\/\/\)$/{
 | 
					 | 
				
			||||||
	    s//\1/
 | 
					 | 
				
			||||||
	    q
 | 
					 | 
				
			||||||
	  }
 | 
					 | 
				
			||||||
	  /^X\(\/\).*/{
 | 
					 | 
				
			||||||
	    s//\1/
 | 
					 | 
				
			||||||
	    q
 | 
					 | 
				
			||||||
	  }
 | 
					 | 
				
			||||||
	  s/.*/./; q'`
 | 
					 | 
				
			||||||
      as_dir=$dirpart/$fdir; as_fn_mkdir_p
 | 
					 | 
				
			||||||
      # echo "creating $dirpart/$file"
 | 
					 | 
				
			||||||
      echo '# dummy' > "$dirpart/$file"
 | 
					 | 
				
			||||||
    done
 | 
					 | 
				
			||||||
  done
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 ;;
 | 
					 ;;
 | 
				
			||||||
    "libtool":C)
 | 
					    "libtool":C)
 | 
				
			||||||
 | 
				
			|||||||
@ -1,7 +1,7 @@
 | 
				
			|||||||
# Makefile.in generated by automake 1.15 from Makefile.am.
 | 
					# Makefile.in generated by automake 1.16.1 from Makefile.am.
 | 
				
			||||||
# @configure_input@
 | 
					# @configure_input@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Copyright (C) 1994-2014 Free Software Foundation, Inc.
 | 
					# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# This Makefile.in is free software; the Free Software Foundation
 | 
					# This Makefile.in is free software; the Free Software Foundation
 | 
				
			||||||
# gives unlimited permission to copy and/or distribute it,
 | 
					# gives unlimited permission to copy and/or distribute it,
 | 
				
			||||||
@ -166,7 +166,19 @@ am__v_at_0 = @
 | 
				
			|||||||
am__v_at_1 = 
 | 
					am__v_at_1 = 
 | 
				
			||||||
DEFAULT_INCLUDES = 
 | 
					DEFAULT_INCLUDES = 
 | 
				
			||||||
depcomp = $(SHELL) $(top_srcdir)/ac/depcomp
 | 
					depcomp = $(SHELL) $(top_srcdir)/ac/depcomp
 | 
				
			||||||
am__depfiles_maybe = depfiles
 | 
					am__maybe_remake_depfiles = depfiles
 | 
				
			||||||
 | 
					am__depfiles_remade = ./$(DEPDIR)/libmio_la-dns.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-err.Plo ./$(DEPDIR)/libmio_la-fmt.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-mio.Plo ./$(DEPDIR)/libmio_la-pro.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sck-addr.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sck.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sys-ass.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sys-err.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sys-log.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sys-mux.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sys-tim.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-sys.Plo ./$(DEPDIR)/libmio_la-tmr.Plo \
 | 
				
			||||||
 | 
						./$(DEPDIR)/libmio_la-utf8.Plo ./$(DEPDIR)/libmio_la-utl.Plo
 | 
				
			||||||
am__mv = mv -f
 | 
					am__mv = mv -f
 | 
				
			||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 | 
					COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 | 
				
			||||||
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 | 
						$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 | 
				
			||||||
@ -356,7 +368,6 @@ pdfdir = @pdfdir@
 | 
				
			|||||||
prefix = @prefix@
 | 
					prefix = @prefix@
 | 
				
			||||||
program_transform_name = @program_transform_name@
 | 
					program_transform_name = @program_transform_name@
 | 
				
			||||||
psdir = @psdir@
 | 
					psdir = @psdir@
 | 
				
			||||||
runstatedir = @runstatedir@
 | 
					 | 
				
			||||||
sbindir = @sbindir@
 | 
					sbindir = @sbindir@
 | 
				
			||||||
sharedstatedir = @sharedstatedir@
 | 
					sharedstatedir = @sharedstatedir@
 | 
				
			||||||
srcdir = @srcdir@
 | 
					srcdir = @srcdir@
 | 
				
			||||||
@ -441,8 +452,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 | 
				
			|||||||
	  *config.status*) \
 | 
						  *config.status*) \
 | 
				
			||||||
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 | 
						    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 | 
				
			||||||
	  *) \
 | 
						  *) \
 | 
				
			||||||
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 | 
						    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
 | 
				
			||||||
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 | 
						    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 | 
				
			||||||
	esac;
 | 
						esac;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 | 
					$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 | 
				
			||||||
@ -513,22 +524,28 @@ mostlyclean-compile:
 | 
				
			|||||||
distclean-compile:
 | 
					distclean-compile:
 | 
				
			||||||
	-rm -f *.tab.c
 | 
						-rm -f *.tab.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-dns.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-dns.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-err.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-err.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-fmt.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-fmt.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-mio.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-mio.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-pro.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-pro.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sck-addr.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sck-addr.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sck.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sck.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-ass.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-ass.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-err.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-err.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-log.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-log.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-mux.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-mux.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-tim.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys-tim.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-sys.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-tmr.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-tmr.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-utf8.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-utf8.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-utl.Plo@am__quote@
 | 
					@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmio_la-utl.Plo@am__quote@ # am--include-marker
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(am__depfiles_remade):
 | 
				
			||||||
 | 
						@$(MKDIR_P) $(@D)
 | 
				
			||||||
 | 
						@echo '# dummy' >$@-t && $(am__mv) $@-t $@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					am--depfiles: $(am__depfiles_remade)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.c.o:
 | 
					.c.o:
 | 
				
			||||||
@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
 | 
					@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
 | 
				
			||||||
@ -745,7 +762,10 @@ cscopelist-am: $(am__tagged_files)
 | 
				
			|||||||
distclean-tags:
 | 
					distclean-tags:
 | 
				
			||||||
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 | 
						-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 | 
				
			||||||
 | 
					
 | 
				
			||||||
distdir: $(DISTFILES)
 | 
					distdir: $(BUILT_SOURCES)
 | 
				
			||||||
 | 
						$(MAKE) $(AM_MAKEFLAGS) distdir-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					distdir-am: $(DISTFILES)
 | 
				
			||||||
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
						@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
				
			||||||
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
						topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 | 
				
			||||||
	list='$(DISTFILES)'; \
 | 
						list='$(DISTFILES)'; \
 | 
				
			||||||
@ -818,7 +838,22 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
 | 
				
			|||||||
	mostlyclean-am
 | 
						mostlyclean-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
distclean: distclean-am
 | 
					distclean: distclean-am
 | 
				
			||||||
	-rm -rf ./$(DEPDIR)
 | 
							-rm -f ./$(DEPDIR)/libmio_la-dns.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-err.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-fmt.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-mio.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-pro.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sck-addr.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sck.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-ass.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-err.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-log.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-mux.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-tim.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-tmr.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-utf8.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-utl.Plo
 | 
				
			||||||
	-rm -f Makefile
 | 
						-rm -f Makefile
 | 
				
			||||||
distclean-am: clean-am distclean-compile distclean-generic \
 | 
					distclean-am: clean-am distclean-compile distclean-generic \
 | 
				
			||||||
	distclean-hdr distclean-tags
 | 
						distclean-hdr distclean-tags
 | 
				
			||||||
@ -865,7 +900,22 @@ install-ps-am:
 | 
				
			|||||||
installcheck-am:
 | 
					installcheck-am:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
maintainer-clean: maintainer-clean-am
 | 
					maintainer-clean: maintainer-clean-am
 | 
				
			||||||
	-rm -rf ./$(DEPDIR)
 | 
							-rm -f ./$(DEPDIR)/libmio_la-dns.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-err.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-fmt.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-mio.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-pro.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sck-addr.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sck.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-ass.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-err.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-log.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-mux.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys-tim.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-sys.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-tmr.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-utf8.Plo
 | 
				
			||||||
 | 
						-rm -f ./$(DEPDIR)/libmio_la-utl.Plo
 | 
				
			||||||
	-rm -f Makefile
 | 
						-rm -f Makefile
 | 
				
			||||||
maintainer-clean-am: distclean-am maintainer-clean-generic
 | 
					maintainer-clean-am: distclean-am maintainer-clean-generic
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -887,9 +937,9 @@ uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES
 | 
				
			|||||||
	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
 | 
						$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
 | 
				
			||||||
.MAKE: all install-am install-data-am install-strip uninstall-am
 | 
					.MAKE: all install-am install-data-am install-strip uninstall-am
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
 | 
					.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
 | 
				
			||||||
	clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
 | 
						clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
 | 
				
			||||||
	ctags-am distclean distclean-compile distclean-generic \
 | 
						ctags ctags-am distclean distclean-compile distclean-generic \
 | 
				
			||||||
	distclean-hdr distclean-libtool distclean-tags distdir dvi \
 | 
						distclean-hdr distclean-libtool distclean-tags distdir dvi \
 | 
				
			||||||
	dvi-am html html-am info info-am install install-am \
 | 
						dvi-am html html-am info info-am install install-am \
 | 
				
			||||||
	install-data install-data-am install-data-hook install-dvi \
 | 
						install-data install-data-am install-data-hook install-dvi \
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										241
									
								
								mio/lib/dns.c
									
									
									
									
									
								
							
							
						
						
									
										241
									
								
								mio/lib/dns.c
									
									
									
									
									
								
							@ -28,21 +28,15 @@
 | 
				
			|||||||
#include <mio-sck.h>
 | 
					#include <mio-sck.h>
 | 
				
			||||||
#include "mio-prv.h"
 | 
					#include "mio-prv.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
typedef struct mio_dns_t mio_dns_t;
 | 
					typedef struct mio_svc_dns_t mio_svc_dns_t;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct mio_dns_t
 | 
					struct mio_svc_dns_t
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	MIO_SVC_HEADERS;
 | 
						MIO_SVC_HEADERS;
 | 
				
			||||||
	/*MIO_DNS_SVC_HEADERS;*/
 | 
						/*MIO_DNS_SVC_HEADERS;*/
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct mio_dnss_t
 | 
					struct mio_svc_dnc_t
 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	MIO_SVC_HEADERS;
 | 
					 | 
				
			||||||
	/*MIO_DNS_SVC_HEADERS;*/
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
struct mio_dnsc_t
 | 
					 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	MIO_SVC_HEADERS;
 | 
						MIO_SVC_HEADERS;
 | 
				
			||||||
	/*MIO_DNS_SVC_HEADERS;*/
 | 
						/*MIO_DNS_SVC_HEADERS;*/
 | 
				
			||||||
@ -53,17 +47,17 @@ struct mio_dnsc_t
 | 
				
			|||||||
	mio_dns_msg_t* pending_req;
 | 
						mio_dns_msg_t* pending_req;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct dnsc_sck_xtn_t
 | 
					struct dnc_sck_xtn_t
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_dnsc_t* dnsc;
 | 
						mio_svc_dnc_t* dnc;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
typedef struct dnsc_sck_xtn_t dnsc_sck_xtn_t;
 | 
					typedef struct dnc_sck_xtn_t dnc_sck_xtn_t;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* ----------------------------------------------------------------------- */
 | 
					/* ----------------------------------------------------------------------- */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define DN_AT_END(ptr) (ptr[0] == '\0' || (ptr[0] == '.' && ptr[1] == '\0'))
 | 
					#define DN_AT_END(ptr) (ptr[0] == '\0' || (ptr[0] == '.' && ptr[1] == '\0'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static mio_oow_t to_dn (mio_dns_t* dns, const mio_bch_t* str, mio_uint8_t* buf, mio_oow_t bufsz)
 | 
					static mio_oow_t to_dn (mio_svc_dns_t* dns, const mio_bch_t* str, mio_uint8_t* buf, mio_oow_t bufsz)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_uint8_t* bp = buf, * be = buf + bufsz;
 | 
						mio_uint8_t* bp = buf, * be = buf + bufsz;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -133,18 +127,18 @@ static mio_oow_t dn_length (mio_uint8_t* ptr, mio_oow_t len)
 | 
				
			|||||||
#	define dns_msg_to_pkt(msg) ((mio_dns_pkt_t*)((mio_dns_msg_t*)(msg) + 1))
 | 
					#	define dns_msg_to_pkt(msg) ((mio_dns_pkt_t*)((mio_dns_msg_t*)(msg) + 1))
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void release_dns_msg (mio_dnsc_t* dnsc, mio_dns_msg_t* msg)
 | 
					static void release_dns_msg (mio_svc_dnc_t* dnc, mio_dns_msg_t* msg)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_t* mio = dnsc->mio;
 | 
						mio_t* mio = dnc->mio;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_DEBUG1 (mio, "releasing dns msg %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->id));
 | 
					MIO_DEBUG1 (mio, "releasing dns msg %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->id));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (msg == dnsc->pending_req || msg->next || msg->prev)
 | 
						if (msg == dnc->pending_req || msg->next || msg->prev)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		/* it's chained in the pending request. unchain it */
 | 
							/* it's chained in the pending request. unchain it */
 | 
				
			||||||
		if (msg->next) msg->next->prev = msg->prev;
 | 
							if (msg->next) msg->next->prev = msg->prev;
 | 
				
			||||||
		if (msg->prev) msg->prev->next = msg->next;
 | 
							if (msg->prev) msg->prev->next = msg->next;
 | 
				
			||||||
		else dnsc->pending_req = msg->next;
 | 
							else dnc->pending_req = msg->next;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* TODO:  add it to the free msg list instead of just freeing it. */
 | 
					/* TODO:  add it to the free msg list instead of just freeing it. */
 | 
				
			||||||
@ -157,7 +151,7 @@ MIO_DEBUG1 (mio, "releasing dns msg %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->
 | 
				
			|||||||
	mio_freemem (mio, msg);
 | 
						mio_freemem (mio, msg);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static mio_oow_t encode_rdata_in_dns_msg (mio_dnsc_t* dnsc, const mio_dns_brr_t* rr, mio_dns_rrtr_t* rrtr)
 | 
					static mio_oow_t encode_rdata_in_dns_msg (mio_svc_dnc_t* dnc, const mio_dns_brr_t* rr, mio_dns_rrtr_t* rrtr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	switch (rr->qtype)
 | 
						switch (rr->qtype)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -213,9 +207,9 @@ static mio_oow_t encode_rdata_in_dns_msg (mio_dnsc_t* dnsc, const mio_dns_brr_t*
 | 
				
			|||||||
	return rr->dlen;
 | 
						return rr->dlen;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static mio_dns_msg_t* build_dns_msg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio_dns_bqr_t* qr, mio_oow_t qr_count, mio_dns_brr_t* rr, mio_oow_t rr_count, mio_dns_bedns_t* edns)
 | 
					static mio_dns_msg_t* build_dns_msg (mio_svc_dnc_t* dnc, mio_dns_bdns_t* bdns, mio_dns_bqr_t* qr, mio_oow_t qr_count, mio_dns_brr_t* rr, mio_oow_t rr_count, mio_dns_bedns_t* edns, void* ctx)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_t* mio = dnsc->mio;
 | 
						mio_t* mio = dnc->mio;
 | 
				
			||||||
	mio_oow_t dnlen, msgbufsz, i;
 | 
						mio_oow_t dnlen, msgbufsz, i;
 | 
				
			||||||
	mio_dns_msg_t* msg;
 | 
						mio_dns_msg_t* msg;
 | 
				
			||||||
	mio_dns_pkt_t* pkt;
 | 
						mio_dns_pkt_t* pkt;
 | 
				
			||||||
@ -279,18 +273,19 @@ static mio_dns_msg_t* build_dns_msg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	msg->buflen = msgbufsz; /* record the buffer size in the preamble */
 | 
						msg->buflen = msgbufsz; /* record the buffer size in the preamble */
 | 
				
			||||||
	msg->rtmridx = MIO_TMRIDX_INVALID;
 | 
						msg->rtmridx = MIO_TMRIDX_INVALID;
 | 
				
			||||||
	msg->dev = (mio_dev_t*)dnsc->sck;
 | 
						msg->dev = (mio_dev_t*)dnc->sck;
 | 
				
			||||||
 | 
						msg->ctx = ctx;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pkt = dns_msg_to_pkt(msg); /* actual message begins after the size word */
 | 
						pkt = dns_msg_to_pkt(msg); /* actual packet data begins after the message structure */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dn = (mio_uint8_t*)(pkt + 1);
 | 
						dn = (mio_uint8_t*)(pkt + 1); /* skip the dns packet header */
 | 
				
			||||||
	for (i = 0; i < qr_count; i++)
 | 
						for (i = 0; i < qr_count; i++)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		/* dnlen includes the ending <zero> */
 | 
							/* dnlen includes the ending <zero> */
 | 
				
			||||||
		dnlen = to_dn((mio_dns_t*)dnsc, qr[i].qname, dn, mio_count_bcstr(qr[i].qname) + 2);
 | 
							dnlen = to_dn((mio_svc_dns_t*)dnc, qr[i].qname, dn, mio_count_bcstr(qr[i].qname) + 2);
 | 
				
			||||||
		if (dnlen <= 0)
 | 
							if (dnlen <= 0)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			release_dns_msg (dnsc, msg);
 | 
								release_dns_msg (dnc, msg);
 | 
				
			||||||
			mio_seterrbfmt (mio, MIO_EINVAL, "invalid domain name - %hs", qr[i].qname);
 | 
								mio_seterrbfmt (mio, MIO_EINVAL, "invalid domain name - %hs", qr[i].qname);
 | 
				
			||||||
			return MIO_NULL;
 | 
								return MIO_NULL;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@ -310,10 +305,10 @@ static mio_dns_msg_t* build_dns_msg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio
 | 
				
			|||||||
			{
 | 
								{
 | 
				
			||||||
				mio_oow_t rdata_len;
 | 
									mio_oow_t rdata_len;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				dnlen = to_dn((mio_dns_t*)dnsc, rr[i].qname, dn, mio_count_bcstr(rr[i].qname) + 2);
 | 
									dnlen = to_dn((mio_svc_dns_t*)dnc, rr[i].qname, dn, mio_count_bcstr(rr[i].qname) + 2);
 | 
				
			||||||
				if (dnlen <= 0)
 | 
									if (dnlen <= 0)
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
					release_dns_msg (dnsc, msg);
 | 
										release_dns_msg (dnc, msg);
 | 
				
			||||||
					mio_seterrbfmt (mio, MIO_EINVAL, "invalid domain name - %hs", rr[i].qname);
 | 
										mio_seterrbfmt (mio, MIO_EINVAL, "invalid domain name - %hs", rr[i].qname);
 | 
				
			||||||
					return MIO_NULL;
 | 
										return MIO_NULL;
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
@ -323,7 +318,7 @@ static mio_dns_msg_t* build_dns_msg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio
 | 
				
			|||||||
				rrtr->qclass = mio_hton16(rr[i].qclass);
 | 
									rrtr->qclass = mio_hton16(rr[i].qclass);
 | 
				
			||||||
				rrtr->ttl = mio_hton32(rr[i].ttl);
 | 
									rrtr->ttl = mio_hton32(rr[i].ttl);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				rdata_len = encode_rdata_in_dns_msg(dnsc, &rr[i], rrtr);
 | 
									rdata_len = encode_rdata_in_dns_msg(dnc, &rr[i], rrtr);
 | 
				
			||||||
				dn = (mio_uint8_t*)(rrtr + 1) + rdata_len;
 | 
									dn = (mio_uint8_t*)(rrtr + 1) + rdata_len;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				match_count++;
 | 
									match_count++;
 | 
				
			||||||
@ -368,8 +363,8 @@ static mio_dns_msg_t* build_dns_msg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	if (bdns->id < 0)
 | 
						if (bdns->id < 0)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		pkt->id = mio_hton16(dnsc->seq);
 | 
							pkt->id = mio_hton16(dnc->seq);
 | 
				
			||||||
		dnsc->seq++;
 | 
							dnc->seq++;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	else
 | 
						else
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -392,10 +387,10 @@ static mio_dns_msg_t* build_dns_msg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio
 | 
				
			|||||||
	return msg;
 | 
						return msg;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int parse_dns_pkt (mio_dnsc_t* dnsc, mio_dns_pkt_t* pkt, mio_oow_t len)
 | 
					static int parse_dns_pkt (mio_svc_dnc_t* dnc, mio_dns_pkt_t* pkt, mio_oow_t len)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	mio_t* mio = dnsc->mio;
 | 
						mio_t* mio = dnc->mio;
 | 
				
			||||||
	mio_dns_bdns_t* bdns;
 | 
						mio_dns_bdns_t* bdns;
 | 
				
			||||||
	mio_uint16_t i, rrc;
 | 
						mio_uint16_t i, rrc;
 | 
				
			||||||
	mio_uint8_t* dn;
 | 
						mio_uint8_t* dn;
 | 
				
			||||||
@ -501,10 +496,10 @@ return 0;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
/* ----------------------------------------------------------------------- */
 | 
					/* ----------------------------------------------------------------------- */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int dnsc_on_read (mio_dev_sck_t* dev, const void* data, mio_iolen_t dlen, const mio_sckaddr_t* srcaddr)
 | 
					static int dnc_on_read (mio_dev_sck_t* dev, const void* data, mio_iolen_t dlen, const mio_sckaddr_t* srcaddr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_t* mio = dev->mio;
 | 
						mio_t* mio = dev->mio;
 | 
				
			||||||
	mio_dnsc_t* dnsc = ((dnsc_sck_xtn_t*)mio_dev_sck_getxtn(dev))->dnsc;
 | 
						mio_svc_dnc_t* dnc = ((dnc_sck_xtn_t*)mio_dev_sck_getxtn(dev))->dnc;
 | 
				
			||||||
	mio_dns_pkt_t* pkt;
 | 
						mio_dns_pkt_t* pkt;
 | 
				
			||||||
	mio_dns_msg_t* reqmsg;
 | 
						mio_dns_msg_t* reqmsg;
 | 
				
			||||||
	mio_uint16_t id;
 | 
						mio_uint16_t id;
 | 
				
			||||||
@ -523,10 +518,10 @@ static int dnsc_on_read (mio_dev_sck_t* dev, const void* data, mio_iolen_t dlen,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	id = mio_ntoh16(pkt->id);
 | 
						id = mio_ntoh16(pkt->id);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* if id doesn't matche one of the pending requests sent,  drop */
 | 
						/* if id doesn't match one of the pending requests sent,  drop it */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* TODO: improve performance */
 | 
					/* TODO: improve performance */
 | 
				
			||||||
	reqmsg = dnsc->pending_req;
 | 
						reqmsg = dnc->pending_req;
 | 
				
			||||||
	while (reqmsg)
 | 
						while (reqmsg)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		mio_dns_pkt_t* reqpkt = dns_msg_to_pkt(reqmsg);
 | 
							mio_dns_pkt_t* reqpkt = dns_msg_to_pkt(reqmsg);
 | 
				
			||||||
@ -534,9 +529,12 @@ static int dnsc_on_read (mio_dev_sck_t* dev, const void* data, mio_iolen_t dlen,
 | 
				
			|||||||
		{
 | 
							{
 | 
				
			||||||
MIO_DEBUG1 (mio, "received dns response...id %d\n", id);
 | 
					MIO_DEBUG1 (mio, "received dns response...id %d\n", id);
 | 
				
			||||||
			/* TODO: parse the response... perform actual work. pass the result back?? */
 | 
								/* TODO: parse the response... perform actual work. pass the result back?? */
 | 
				
			||||||
			parse_dns_pkt (dnsc, pkt, dlen);
 | 
								/*parse_dns_pkt (dnc, pkt, dlen);*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			release_dns_msg (dnsc, reqmsg);
 | 
								if (MIO_LIKELY(reqmsg->ctx))
 | 
				
			||||||
 | 
									((mio_svc_dnc_on_reply_t)reqmsg->ctx) (dnc, reqmsg, MIO_ENOERR, data, dlen);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								release_dns_msg (dnc, reqmsg);
 | 
				
			||||||
			return 0;
 | 
								return 0;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		reqmsg = reqmsg->next;
 | 
							reqmsg = reqmsg->next;
 | 
				
			||||||
@ -547,25 +545,28 @@ MIO_DEBUG1 (mio, "received dns response...id %d\n", id);
 | 
				
			|||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void dnsc_on_read_timeout (mio_t* mio, const mio_ntime_t* now, mio_tmrjob_t* job)
 | 
					static void dnc_on_read_timeout (mio_t* mio, const mio_ntime_t* now, mio_tmrjob_t* job)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_dns_msg_t* msg = (mio_dns_msg_t*)job->ctx;
 | 
						mio_dns_msg_t* reqmsg = (mio_dns_msg_t*)job->ctx;
 | 
				
			||||||
	mio_dev_sck_t* dev = (mio_dev_sck_t*)msg->dev;
 | 
						mio_dev_sck_t* dev = (mio_dev_sck_t*)reqmsg->dev;
 | 
				
			||||||
	mio_dnsc_t* dnsc = ((dnsc_sck_xtn_t*)mio_dev_sck_getxtn(dev))->dnsc;
 | 
						mio_svc_dnc_t* dnc = ((dnc_sck_xtn_t*)mio_dev_sck_getxtn(dev))->dnc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	MIO_ASSERT (mio, msg->rtmridx == MIO_TMRIDX_INVALID);
 | 
						MIO_ASSERT (mio, reqmsg->rtmridx == MIO_TMRIDX_INVALID);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_DEBUG0 (mio, "unable to receive dns response in time...\n");
 | 
					MIO_DEBUG0 (mio, "unable to receive dns response in time...\n");
 | 
				
			||||||
	release_dns_msg (dnsc, msg);
 | 
					
 | 
				
			||||||
 | 
						if (MIO_LIKELY(reqmsg->ctx))
 | 
				
			||||||
 | 
							((mio_svc_dnc_on_reply_t)reqmsg->ctx) (dnc, reqmsg, MIO_ETMOUT, MIO_NULL, 0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						release_dns_msg (dnc, reqmsg);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int dnsc_on_write (mio_dev_sck_t* dev, mio_iolen_t wrlen, void* wrctx, const mio_sckaddr_t* dstaddr)
 | 
					static int dnc_on_write (mio_dev_sck_t* dev, mio_iolen_t wrlen, void* wrctx, const mio_sckaddr_t* dstaddr)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_t* mio = dev->mio;
 | 
						mio_t* mio = dev->mio;
 | 
				
			||||||
	mio_dns_msg_t* msg = (mio_dns_msg_t*)wrctx;
 | 
						mio_dns_msg_t* msg = (mio_dns_msg_t*)wrctx;
 | 
				
			||||||
	mio_dnsc_t* dnsc = ((dnsc_sck_xtn_t*)mio_dev_sck_getxtn(dev))->dnsc;
 | 
						mio_svc_dnc_t* dnc = ((dnc_sck_xtn_t*)mio_dev_sck_getxtn(dev))->dnc;
 | 
				
			||||||
	
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_DEBUG1 (mio, "sent dns message %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->id));
 | 
					MIO_DEBUG1 (mio, "sent dns message %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->id));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -577,7 +578,7 @@ MIO_DEBUG1 (mio, "sent dns message %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->i
 | 
				
			|||||||
		mio_tmrjob_t tmrjob;
 | 
							mio_tmrjob_t tmrjob;
 | 
				
			||||||
		mio_ntime_t tmout;
 | 
							mio_ntime_t tmout;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/* TODO: make this configurable. or accept dnsc->config.read_timeout... */
 | 
							/* TODO: make this configurable. or accept dnc->config.read_timeout... */
 | 
				
			||||||
		tmout.sec = 3;
 | 
							tmout.sec = 3;
 | 
				
			||||||
		tmout.nsec = 0;
 | 
							tmout.nsec = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -585,140 +586,166 @@ MIO_DEBUG1 (mio, "sent dns message %d\n", (int)mio_ntoh16(dns_msg_to_pkt(msg)->i
 | 
				
			|||||||
		tmrjob.ctx = msg;
 | 
							tmrjob.ctx = msg;
 | 
				
			||||||
		mio_gettime (mio, &tmrjob.when);
 | 
							mio_gettime (mio, &tmrjob.when);
 | 
				
			||||||
		MIO_ADD_NTIME (&tmrjob.when, &tmrjob.when, &tmout);
 | 
							MIO_ADD_NTIME (&tmrjob.when, &tmrjob.when, &tmout);
 | 
				
			||||||
		tmrjob.handler = dnsc_on_read_timeout;
 | 
							tmrjob.handler = dnc_on_read_timeout;
 | 
				
			||||||
		tmrjob.idxptr = &msg->rtmridx;
 | 
							tmrjob.idxptr = &msg->rtmridx;
 | 
				
			||||||
		msg->rtmridx = mio_instmrjob(mio, &tmrjob);
 | 
							msg->rtmridx = mio_instmrjob(mio, &tmrjob);
 | 
				
			||||||
		if (msg->rtmridx == MIO_TMRIDX_INVALID)
 | 
							if (msg->rtmridx == MIO_TMRIDX_INVALID)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
								if (MIO_LIKELY(msg->ctx))
 | 
				
			||||||
 | 
									((mio_svc_dnc_on_reply_t)msg->ctx) (dnc, msg, mio_geterrnum(mio), MIO_NULL, 0);
 | 
				
			||||||
 | 
								release_dns_msg (dnc, msg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			MIO_DEBUG0 (mio, "unable to schedule timeout...\n");
 | 
								MIO_DEBUG0 (mio, "unable to schedule timeout...\n");
 | 
				
			||||||
			release_dns_msg (dnsc, msg);
 | 
					 | 
				
			||||||
			return 0;
 | 
								return 0;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/* TODO: improve performance. hashing by id? */
 | 
							/* TODO: improve performance. hashing by id? */
 | 
				
			||||||
		if (dnsc->pending_req)
 | 
					
 | 
				
			||||||
 | 
							/* chain it to the peing request list */
 | 
				
			||||||
 | 
							if (dnc->pending_req)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			dnsc->pending_req->prev = msg;
 | 
								dnc->pending_req->prev = msg;
 | 
				
			||||||
			msg->next = dnsc->pending_req;
 | 
								msg->next = dnc->pending_req;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		dnsc->pending_req = msg;
 | 
							dnc->pending_req = msg;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							/* sent an answer - we don't need this any more */
 | 
				
			||||||
 | 
							/* also we don't call the on_reply callback stored in msg->ctx as this is not a reply context */
 | 
				
			||||||
 | 
							release_dns_msg (dnc, msg);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void dnsc_on_connect (mio_dev_sck_t* dev)
 | 
					static void dnc_on_connect (mio_dev_sck_t* dev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void dnsc_on_disconnect (mio_dev_sck_t* dev)
 | 
					static void dnc_on_disconnect (mio_dev_sck_t* dev)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
mio_dnsc_t* mio_dnsc_start (mio_t* mio)
 | 
					mio_svc_dnc_t* mio_svc_dnc_start (mio_t* mio)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_dnsc_t* dnsc = MIO_NULL;
 | 
						mio_svc_dnc_t* dnc = MIO_NULL;
 | 
				
			||||||
	mio_dev_sck_make_t mkinfo;
 | 
						mio_dev_sck_make_t mkinfo;
 | 
				
			||||||
	dnsc_sck_xtn_t* xtn;
 | 
						dnc_sck_xtn_t* xtn;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dnsc = (mio_dnsc_t*)mio_callocmem(mio, MIO_SIZEOF(*dnsc));
 | 
						dnc = (mio_svc_dnc_t*)mio_callocmem(mio, MIO_SIZEOF(*dnc));
 | 
				
			||||||
	if (!dnsc) goto oops;
 | 
						if (!dnc) goto oops;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dnsc->mio = mio;
 | 
						dnc->mio = mio;
 | 
				
			||||||
	dnsc->stop = mio_dnsc_stop;
 | 
						dnc->stop = mio_svc_dnc_stop;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	MIO_MEMSET (&mkinfo, 0, MIO_SIZEOF(mkinfo));
 | 
						MIO_MEMSET (&mkinfo, 0, MIO_SIZEOF(mkinfo));
 | 
				
			||||||
	mkinfo.type = MIO_DEV_SCK_UDP4; /* or UDP6 depending on the binding address */
 | 
						mkinfo.type = MIO_DEV_SCK_UDP4; /* or UDP6 depending on the binding address */
 | 
				
			||||||
	mkinfo.on_write = dnsc_on_write;
 | 
						mkinfo.on_write = dnc_on_write;
 | 
				
			||||||
	mkinfo.on_read = dnsc_on_read;
 | 
						mkinfo.on_read = dnc_on_read;
 | 
				
			||||||
	mkinfo.on_connect = dnsc_on_connect;
 | 
						mkinfo.on_connect = dnc_on_connect;
 | 
				
			||||||
	mkinfo.on_disconnect = dnsc_on_disconnect;
 | 
						mkinfo.on_disconnect = dnc_on_disconnect;
 | 
				
			||||||
	dnsc->sck = mio_dev_sck_make(mio, MIO_SIZEOF(*xtn), &mkinfo);
 | 
						dnc->sck = mio_dev_sck_make(mio, MIO_SIZEOF(*xtn), &mkinfo);
 | 
				
			||||||
	if (!dnsc->sck) goto oops;
 | 
						if (!dnc->sck) goto oops;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	xtn = (dnsc_sck_xtn_t*)mio_dev_sck_getxtn(dnsc->sck);
 | 
						xtn = (dnc_sck_xtn_t*)mio_dev_sck_getxtn(dnc->sck);
 | 
				
			||||||
	xtn->dnsc = dnsc;
 | 
						xtn->dnc = dnc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* TODO: bind if requested */
 | 
						/* TODO: bind if requested */
 | 
				
			||||||
	/*if (mio_dev_sck_bind(dev, ....) <= -1) goto oops;*/
 | 
						/*if (mio_dev_sck_bind(dev, ....) <= -1) goto oops;*/
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
mio_uint32_t ia = 0x01010101; /* 1.1.1.1 */
 | 
					mio_uint32_t ia = 0x01010101; /* 1.1.1.1 */ /* TODO: accept as parameter ... */
 | 
				
			||||||
	mio_sckaddr_initforip4 (&dnsc->serveraddr, 53, (mio_ip4addr_t*)&ia);
 | 
						mio_sckaddr_initforip4 (&dnc->serveraddr, 53, (mio_ip4addr_t*)&ia);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	MIO_SVC_REGISTER (mio, (mio_svc_t*)dnsc);
 | 
						MIO_SVC_REGISTER (mio, (mio_svc_t*)dnc);
 | 
				
			||||||
	return dnsc;
 | 
						return dnc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
oops:
 | 
					oops:
 | 
				
			||||||
	if (dnsc)
 | 
						if (dnc)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (dnsc->sck) mio_dev_sck_kill (dnsc->sck);
 | 
							if (dnc->sck) mio_dev_sck_kill (dnc->sck);
 | 
				
			||||||
		mio_freemem (mio, dnsc);
 | 
							mio_freemem (mio, dnc);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return MIO_NULL;
 | 
						return MIO_NULL;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void mio_dnsc_stop (mio_dnsc_t* dnsc)
 | 
					void mio_svc_dnc_stop (mio_svc_dnc_t* dnc)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_t* mio = dnsc->mio;
 | 
						mio_t* mio = dnc->mio;
 | 
				
			||||||
	if (dnsc->sck) mio_dev_sck_kill (dnsc->sck);
 | 
						if (dnc->sck) mio_dev_sck_kill (dnc->sck);
 | 
				
			||||||
	MIO_SVC_UNREGISTER (mio, dnsc);
 | 
						MIO_SVC_UNREGISTER (mio, dnc);
 | 
				
			||||||
	while (dnsc->pending_req) release_dns_msg (dnsc, dnsc->pending_req);
 | 
						while (dnc->pending_req) release_dns_msg (dnc, dnc->pending_req);
 | 
				
			||||||
	mio_freemem (mio, dnsc);
 | 
						mio_freemem (mio, dnc);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int mio_dnsc_sendmsg (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio_dns_bqr_t* qr, mio_oow_t qr_count, mio_dns_brr_t* rr, mio_oow_t rr_count, mio_dns_bedns_t* edns)
 | 
					int mio_svc_dnc_sendmsg (mio_svc_dnc_t* dnc, mio_dns_bdns_t* bdns, mio_dns_bqr_t* qr, mio_oow_t qr_count, mio_dns_brr_t* rr, mio_oow_t rr_count, mio_dns_bedns_t* edns, mio_svc_dnc_on_reply_t on_reply)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/* send a request or a response */
 | 
						/* send a request or a response */
 | 
				
			||||||
	mio_dns_msg_t* msg;
 | 
						mio_dns_msg_t* msg;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	msg = build_dns_msg(dnsc, bdns, qr, qr_count, rr, rr_count, edns);
 | 
						msg = build_dns_msg(dnc, bdns, qr, qr_count, rr, rr_count, edns, on_reply);
 | 
				
			||||||
	if (!msg) return -1;
 | 
						if (!msg) return -1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* TODO: optionally, override dnsc->serveraddr and use the target address passed as a parameter */
 | 
						/* TODO: optionally, override dnc->serveraddr and use the target address passed as a parameter */
 | 
				
			||||||
	if (mio_dev_sck_write(dnsc->sck, dns_msg_to_pkt(msg), msg->pktlen, msg, &dnsc->serveraddr) <= -1)
 | 
						if (mio_dev_sck_write(dnc->sck, dns_msg_to_pkt(msg), msg->pktlen, msg, &dnc->serveraddr) <= -1)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		release_dns_msg (dnsc, msg);
 | 
							release_dns_msg (dnc, msg);
 | 
				
			||||||
		return -1;
 | 
							return -1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int mio_dnsc_sendreq (mio_dnsc_t* dnsc, mio_dns_bdns_t* bdns, mio_dns_bqr_t* qr, mio_oow_t qr_count, mio_dns_bedns_t* edns)
 | 
					int mio_svc_dnc_sendreq (mio_svc_dnc_t* dnc, mio_dns_bdns_t* bdns, mio_dns_bqr_t* qr, mio_oow_t qr_count, mio_dns_bedns_t* edns, mio_svc_dnc_on_reply_t on_reply)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/* send requests without resource record */
 | 
						/* send requests without resource record */
 | 
				
			||||||
	mio_oow_t i;
 | 
						mio_oow_t i;
 | 
				
			||||||
	for (i = 0; i < qr_count; i++)
 | 
						for (i = 0; i < qr_count; i++)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (mio_dnsc_sendmsg(dnsc, bdns, &qr[i], 1, MIO_NULL, 0, edns) <= -1) return -1;
 | 
							if (mio_svc_dnc_sendmsg(dnc, bdns, &qr[i], 1, MIO_NULL, 0, edns, on_reply) <= -1) return -1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if 0
 | 
					static void on_dnc_resolve_reply (mio_svc_dnc_t* dnc, mio_dns_msg_t* reqmsg, mio_errnum_t status, const void* data, mio_oow_t dlen)
 | 
				
			||||||
static void dnss_on_request (mio_dnss_t* dnss, mio_dns_req_t* req)
 | 
					 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio_dnss_reply (dnss, rep); /* reply send timeout??? */
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* ----------------------------------------------------------------------- */
 | 
					int mio_svc_dnc_resolve (mio_svc_dnc_t* dnc, const mio_bch_t* qname, mio_dns_qtype_t qtype, mio_svc_dnc_on_reply_t on_reply)
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int main ()
 | 
					 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	mio = mio_open ();
 | 
						static mio_dns_bdns_t qhdr =
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							-1,              /* id */
 | 
				
			||||||
 | 
							0,                  /* qr */
 | 
				
			||||||
 | 
							MIO_DNS_OPCODE_QUERY, /* opcode */
 | 
				
			||||||
 | 
							0, /* aa */
 | 
				
			||||||
 | 
							0, /* tc */
 | 
				
			||||||
 | 
							1, /* rd */
 | 
				
			||||||
 | 
							0, /* ra */
 | 
				
			||||||
 | 
							0, /* ad */
 | 
				
			||||||
 | 
							0, /* cd */
 | 
				
			||||||
 | 
							MIO_DNS_RCODE_NOERROR /* rcode */
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dnss1 = mio_dnss_start(mio, "1.1.1.1:53,2.2.2.2:53", dnss_on_request);
 | 
						static mio_dns_bedns_t qedns =
 | 
				
			||||||
	mio_dnss_end (dnss1);
 | 
						{
 | 
				
			||||||
 | 
							4096, /* uplen */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dnsc1 = mio_dnsc_start (mio, "8.8.8.8:53,1.1.1.1:53"); /* option - send to all, send one by one */
 | 
							0,    /* edns version */
 | 
				
			||||||
	mio_dnsc_resolve (dnsc1, "A:www.google.com", dnsc_on_response);
 | 
							0,    /* dnssec ok */
 | 
				
			||||||
	mio_dnsc_end (dnsc1);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	mio_close (mio);
 | 
							0,    /* number of edns options */
 | 
				
			||||||
	return 0;
 | 
							MIO_NULL
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						mio_dns_bqr_t qr;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						qr.qname = (mio_bch_t*)qname;
 | 
				
			||||||
 | 
						qr.qtype = qtype;
 | 
				
			||||||
 | 
						qr.qclass = MIO_DNS_QCLASS_IN;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return mio_svc_dnc_sendreq(dnc, &qhdr, &qr, 1, &qedns, on_reply);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -120,6 +120,7 @@ struct mio_dns_msg_t
 | 
				
			|||||||
	mio_oow_t      pktlen;
 | 
						mio_oow_t      pktlen;
 | 
				
			||||||
	mio_tmridx_t   rtmridx;
 | 
						mio_tmridx_t   rtmridx;
 | 
				
			||||||
	mio_dev_t*     dev;
 | 
						mio_dev_t*     dev;
 | 
				
			||||||
 | 
						void*          ctx;
 | 
				
			||||||
	mio_dns_msg_t* prev;
 | 
						mio_dns_msg_t* prev;
 | 
				
			||||||
	mio_dns_msg_t* next;
 | 
						mio_dns_msg_t* next;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
@ -205,8 +206,7 @@ typedef struct mio_dns_eopt_t mio_dns_eopt_t;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include <mio-upac.h>
 | 
					#include <mio-upac.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
typedef struct mio_dnss_t mio_dnss_t;
 | 
					/* ---------------------------------------------------------------- */
 | 
				
			||||||
typedef struct mio_dnsc_t mio_dnsc_t;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
#define MIO_DNS_HDR_MAKE_FLAGS(qr,opcode,aa,tc,rd,ra,ad,cd,rcode) \
 | 
					#define MIO_DNS_HDR_MAKE_FLAGS(qr,opcode,aa,tc,rd,ra,ad,cd,rcode) \
 | 
				
			||||||
@ -324,34 +324,56 @@ struct mio_dns_bedns_t
 | 
				
			|||||||
};
 | 
					};
 | 
				
			||||||
typedef struct mio_dns_bedns_t mio_dns_bedns_t;
 | 
					typedef struct mio_dns_bedns_t mio_dns_bedns_t;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* ---------------------------------------------------------------- */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					typedef struct mio_svc_dns_t mio_svc_dns_t;
 | 
				
			||||||
 | 
					typedef struct mio_svc_dnc_t mio_svc_dnc_t;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					typedef void (*mio_svc_dnc_on_reply_t) (
 | 
				
			||||||
 | 
						mio_svc_dnc_t* dnc,
 | 
				
			||||||
 | 
						mio_dns_msg_t* reqmsg,
 | 
				
			||||||
 | 
						mio_errnum_t   status,
 | 
				
			||||||
 | 
						const void*    data,
 | 
				
			||||||
 | 
						mio_oow_t      len
 | 
				
			||||||
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(__cplusplus)
 | 
					#if defined(__cplusplus)
 | 
				
			||||||
extern "C" {
 | 
					extern "C" {
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_EXPORT mio_dnsc_t* mio_dnsc_start (
 | 
					MIO_EXPORT mio_svc_dnc_t* mio_svc_dnc_start (
 | 
				
			||||||
	mio_t* mio
 | 
						mio_t* mio
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_EXPORT void mio_dnsc_stop (
 | 
					MIO_EXPORT void mio_svc_dnc_stop (
 | 
				
			||||||
	mio_dnsc_t* dnsc
 | 
						mio_svc_dnc_t* dnc
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_EXPORT int mio_dnsc_sendreq (
 | 
					MIO_EXPORT int mio_svc_dnc_sendreq (
 | 
				
			||||||
	mio_dnsc_t*      dnsc,
 | 
						mio_svc_dnc_t*         dnc,
 | 
				
			||||||
	mio_dns_bdns_t*        bdns,
 | 
						mio_dns_bdns_t*        bdns,
 | 
				
			||||||
	mio_dns_bqr_t*         qr,
 | 
						mio_dns_bqr_t*         qr,
 | 
				
			||||||
	mio_oow_t              qr_count,
 | 
						mio_oow_t              qr_count,
 | 
				
			||||||
	mio_dns_bedns_t* edns
 | 
						mio_dns_bedns_t*       edns,
 | 
				
			||||||
 | 
						mio_svc_dnc_on_reply_t on_reply
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MIO_EXPORT int mio_dnsc_sendmsg (
 | 
					MIO_EXPORT int mio_svc_dnc_sendmsg (
 | 
				
			||||||
	mio_dnsc_t*      dnsc,
 | 
						mio_svc_dnc_t*         dnc,
 | 
				
			||||||
	mio_dns_bdns_t*        bdns,
 | 
						mio_dns_bdns_t*        bdns,
 | 
				
			||||||
	mio_dns_bqr_t*         qr,
 | 
						mio_dns_bqr_t*         qr,
 | 
				
			||||||
	mio_oow_t              qr_count,
 | 
						mio_oow_t              qr_count,
 | 
				
			||||||
	mio_dns_brr_t*         rr,
 | 
						mio_dns_brr_t*         rr,
 | 
				
			||||||
	mio_oow_t              rr_count,
 | 
						mio_oow_t              rr_count,
 | 
				
			||||||
	mio_dns_bedns_t* edns
 | 
						mio_dns_bedns_t*       edns,
 | 
				
			||||||
 | 
						mio_svc_dnc_on_reply_t on_reply
 | 
				
			||||||
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MIO_EXPORT int mio_svc_dnc_resolve (
 | 
				
			||||||
 | 
						mio_svc_dnc_t*         dnc,
 | 
				
			||||||
 | 
						const mio_bch_t*       qname,
 | 
				
			||||||
 | 
						mio_dns_qtype_t        qtype,
 | 
				
			||||||
 | 
						mio_svc_dnc_on_reply_t on_reply
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined(__cplusplus)
 | 
					#if defined(__cplusplus)
 | 
				
			||||||
 | 
				
			|||||||
@ -677,11 +677,11 @@ mio_dev_t* mio_dev_make (mio_t* mio, mio_oow_t dev_size, mio_dev_mth_t* dev_mth,
 | 
				
			|||||||
	if (!(dev->dev_cap & MIO_DEV_CAP_OUT)) dev->dev_cap |= MIO_DEV_CAP_OUT_CLOSED;
 | 
						if (!(dev->dev_cap & MIO_DEV_CAP_OUT)) dev->dev_cap |= MIO_DEV_CAP_OUT_CLOSED;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (mio_dev_watch(dev, MIO_DEV_WATCH_START, 0) <= -1) goto oops_after_make;
 | 
						if (mio_dev_watch(dev, MIO_DEV_WATCH_START, 0) <= -1) goto oops_after_make;
 | 
				
			||||||
 | 
					 | 
				
			||||||
	/* and place the new device object at the back of the active device list */
 | 
						/* and place the new device object at the back of the active device list */
 | 
				
			||||||
	APPEND_DEVICE_TO_LIST (&mio->actdev, dev);
 | 
						APPEND_DEVICE_TO_LIST (&mio->actdev, dev);
 | 
				
			||||||
	dev->dev_cap |= MIO_DEV_CAP_ACTIVE;
 | 
						dev->dev_cap |= MIO_DEV_CAP_ACTIVE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return dev;
 | 
						return dev;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
oops_after_make:
 | 
					oops_after_make:
 | 
				
			||||||
 | 
				
			|||||||
@ -27,6 +27,7 @@
 | 
				
			|||||||
#include "mio-prv.h"
 | 
					#include "mio-prv.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <errno.h>
 | 
					#include <errno.h>
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static mio_errnum_t errno_to_errnum (int errcode)
 | 
					static mio_errnum_t errno_to_errnum (int errcode)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -240,6 +241,7 @@ mio_errnum_t mio_sys_syserrstrb (mio_t* mio, int syserr_type, int syserr_code, m
 | 
				
			|||||||
			return errno_to_errnum(syserr_code);
 | 
								return errno_to_errnum(syserr_code);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (buf) mio_copy_bcstr (buf, len, "system error");
 | 
						if (buf) mio_copy_bcstr (buf, len, "system error");
 | 
				
			||||||
	return MIO_ESYSERR;
 | 
						return MIO_ESYSERR;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user