diff --git a/.github/workflows/deploy_pages.yml b/.github/workflows/deploy-pages.yml similarity index 62% rename from .github/workflows/deploy_pages.yml rename to .github/workflows/deploy-pages.yml index a134ff8..90a0f4c 100644 --- a/.github/workflows/deploy_pages.yml +++ b/.github/workflows/deploy-pages.yml @@ -1,9 +1,7 @@ -name: Deploy Pages +name: Deploy Jekyll with GitHub Pages on: - # Runs on pushes targeting the default branch push: - branches: [ main ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: @@ -25,46 +23,34 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - name: Install build tools - run: | - sudo apt-get install -y markdown make + - name: Checkout + uses: actions/checkout@v4 + - name: Checkout c-ares docs + uses: actions/checkout@v4 + with: + repository: c-ares/c-ares + path: c-ares.git - name: Checkout roffit uses: actions/checkout@v4 with: repository: "bagder/roffit" - path: roffit + path: roffit.git - name: Build and Install roffit run: | - cd roffit + cd roffit.git sudo make install - - name: Checkout fcpp - uses: actions/checkout@v4 - with: - repository: "bagder/fcpp" - path: fcpp - - name: Build and Install fcpp - run: | - cd fcpp - sudo make install - - name: Checkout source needed to build docs - uses: actions/checkout@v4 - with: - repository: "c-ares/c-ares" - path: ares-cvs - name: Setup Pages - id: pages uses: actions/configure-pages@v5 - - name: Build pages + - name: Build external pages run: | make - - name: Clean up files we don't want deployed - run: | - rm -rf ares-cvs fcpp roffit .deps *.gen *.raw *.t *.md Makefile download/Makefile download/*.t + - name: Build with Jekyll + uses: actions/jekyll-build-pages@v1 + with: + source: ./ + destination: ./_site - name: Upload artifact uses: actions/upload-pages-artifact@v3 - with: - path: ./ # Deployment job deploy: @@ -73,6 +59,7 @@ jobs: url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: build + if: github.repository == 'c-ares/c-ares.github.io' && github.refs == 'refs/heads/main' steps: - name: Deploy to GitHub Pages id: deployment diff --git a/.gitignore b/.gitignore index 194c770..c965f8c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,10 @@ -*.html -*.raw -*.gen -ares-cvs +Gemfile.lock +_site +.sass-cache .deps +c-ares.git +roffit.git +docs +security.md +license.md + diff --git a/.htaccess b/.htaccess deleted file mode 100644 index e32b009..0000000 --- a/.htaccess +++ /dev/null @@ -1 +0,0 @@ -RedirectMatch "^/.git" https://c-ares.org/download/ diff --git a/404.html b/404.html new file mode 100644 index 0000000..c472b4e --- /dev/null +++ b/404.html @@ -0,0 +1,24 @@ +--- +layout: default +--- + + + +
+

404

+ +

Page not found :(

+

The requested page could not be found.

+
diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..82c3f97 --- /dev/null +++ b/Gemfile @@ -0,0 +1,43 @@ +source "https://rubygems.org" + +# Hello! This is where you manage which Jekyll version is used to run. +# When you want to use a different version, change it below, save the +# file and run `bundle install`. Run Jekyll with `bundle exec`, like so: +# +# bundle exec jekyll serve +# +# This will help ensure the proper Jekyll version is running. +# Happy Jekylling! +#gem "jekyll", "~> 3.9.5" + +# This is the default theme for new Jekyll sites. You may change this to anything you like. +gem "minima", "~> 2.0" + +# If you want to use GitHub Pages, remove the "gem "jekyll"" above and +# uncomment the line below. To upgrade, run `bundle update github-pages`. +gem "github-pages", "~> 231",group: :jekyll_plugins + +# If you have any plugins, put them here! +group :jekyll_plugins do + gem "jekyll-feed", "~> 0.6" +end + +# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem +# and associated library. +platforms :mingw, :x64_mingw, :mswin, :jruby do + gem "tzinfo", ">= 1", "< 3" + gem "tzinfo-data" +end + +# Performance-booster for watching directories on Windows +gem "wdm", "~> 0.1.0", :install_if => Gem.win_platform? + +# kramdown v2 ships without the gfm parser by default. If you're using +# kramdown v1, comment out this line. +gem "kramdown-parser-gfm" + +# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem +# do not have a Java counterpart. +gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby] + +gem "webrick" diff --git a/Makefile b/Makefile index bf26541..84e414c 100644 --- a/Makefile +++ b/Makefile @@ -1,127 +1,50 @@ .DEFAULT_GOAL := all ROOT=. DEPDIR=.deps - -MAINPARTS= $(ROOT)/doctype.t body.t footer.t $(ROOT)/setup.t \ - menu.t Makefile docmenu.t css.t -OPTS=-WWW -Uunix -H -C -V -I$(ROOT) -LL -FCPP=fcpp -ACTION=$(FCPP) $(OPTS) $< $@ -SRCDIR=ares-cvs +SRCDIR=c-ares.git DOCSDIR=$(SRCDIR)/docs -MAN2HTML= roffit --bare --mandir=$(DOCSDIR) --hrefdir=. -MARKDOWN=markdown +DOCSDEST=docs +MAN2HTML=roffit --bare --mandir=$(DOCSDIR) --hrefdir=/$(DOCSDEST) MANPAGES_SRC=$(sort $(shell find $(DOCSDIR) -name "*.3")) -MANPAGES=$(sort $(notdir $(MANPAGES_SRC:.3=.html))) -DEPFILES=$(MANPAGES:%.html=$(DEPDIR)/%.d) +MANPAGES=$(addprefix $(DOCSDEST)/,$(sort $(notdir $(MANPAGES_SRC:.3=.html)))) +MANPAGES_NAMES=$(sort $(notdir $(MANPAGES_SRC))) +DEPFILES=$(MANPAGES_NAMES:%.3=$(DEPDIR)/%.d) + +PAGES=$(MANPAGES) security.md license.md -PAGES = \ - adv_20160929.html \ - adv_20170620.html \ - adv_20210810.html \ - changelog.html \ - docs.html \ - index.html \ - indexbot.html \ - indextop.html \ - license.html \ - mailbot.html \ - mailhead.html \ - mailtop.html \ - old.html \ - otherlibs.html \ - security.html \ - vulns.html \ - why.html \ - $(MANPAGES) +$(DOCSDEST): + mkdir -p $@ -$(DEPDIR): +$(DEPDIR): $(DOCSDEST) mkdir -p $@ $(DEPDIR)/%.d: $(DOCSDIR)/%.3 - sed -n -e 's|^\.so man[0-9]/\(.*\.[0-9]\).*|$*.html: $(DOCSDIR)/\1|p' < $< > $@ + sed -n -e 's|^\.so man[0-9]/\(.*\.[0-9]\).*|/$(DOCSDEST)/$*.html: $(DOCSDIR)/\1|p' < $< > $@ -%.html: $(DOCSDIR)/%.3 $(DEPDIR)/%.d - $(MAN2HTML) < $< >$*.raw - $(FCPP) $(OPTS) -Dfunc=$* -Ddocs_$* -Dfuncinc=\"$*.raw\" ares_func.t $@ +$(DOCSDEST)/%.html: $(DOCSDIR)/%.3 $(DEPDIR)/%.d + $(MAN2HTML) < $< > $(DOCSDEST)/$*.raw + echo "---\nlayout: page\n---" > $(DOCSDEST)/$*.html + cat $(DOCSDEST)/$*.raw >> $(DOCSDEST)/$*.html + rm -f $(DOCSDEST)/$*.raw + +security.md: c-ares.git/SECURITY.md + echo "---\nlayout: page\ntitle: \"\"\n---" > $@ + cat $< >> $@ + +license.md: c-ares.git/LICENSE.md + echo "---\nlayout: page\ntitle: \"\"\nmenu: License\npermalink: /license/\n---" > $@ + cat $< >> $@ $(DEPFILES): $(DEPDIR) + include $(DEPFILES) all: $(PAGES) - make -C download .PHONY: all -index.html: index.t $(MAINPARTS) - $(ACTION) - -changelog.html: changelog.t $(MAINPARTS) changelog.gen - $(ACTION) - -changelog.gen: changelog.md - $(MARKDOWN) < $< > $@ - -vulns.html: vulns.t $(MAINPARTS) - $(ACTION) - -security.html: security.t $(MAINPARTS) security.gen - $(ACTION) - -security.gen: $(SRCDIR)/SECURITY.md - $(MARKDOWN) < $< > $@ - -license.gen: $(SRCDIR)/LICENSE.md - $(MARKDOWN) < $< > $@ - -adv_20160929.html: adv_20160929.t $(MAINPARTS) adv_20160929.gen - $(ACTION) -adv_20160929.gen: adv_20160929.md - $(MARKDOWN) < $< > $@ - -adv_20170620.html: adv_20170620.t $(MAINPARTS) adv_20170620.gen - $(ACTION) -adv_20170620.gen: adv_20170620.md - $(MARKDOWN) < $< > $@ - -adv_20210810.html: adv_20210810.t $(MAINPARTS) adv_20210810.gen - $(ACTION) -adv_20210810.gen: adv_20210810.md - $(MARKDOWN) < $< > $@ - -old.html: old.t $(MAINPARTS) - $(ACTION) - -otherlibs.html: otherlibs.t $(MAINPARTS) - $(ACTION) - -why.html: why.t $(MAINPARTS) - $(ACTION) - -docs.gen: $(MANPAGES) - @echo "$(MANPAGES)" | sed 's/\([a-zA-Z0-9_]*\)\.html/
  • \1<\/a>\n/g' > $@ - -docs.html: docs.t docs.gen $(MAINPARTS) - $(ACTION) - -license.html: license.t $(MAINPARTS) license.gen - $(ACTION) - -mailhead.html: mailhead.t $(MAINPARTS) - $(ACTION) - -mailtop.html: mailtop.t $(MAINPARTS) mailmenu.t - $(ACTION) -mailbot.html: mailbot.t $(MAINPARTS) - $(ACTION) -indextop.html: indextop.t $(MAINPARTS) mailmenu.t - $(ACTION) -indexbot.html: indexbot.t $(MAINPARTS) - $(ACTION) - clean: find . -name "*~" -exec rm {} \; - rm -f *.raw *.html *.gen + rm -rf $(PAGES) $(DOCSDEST)/*.raw rm -rf $(DEPDIR) - make -C download clean diff --git a/README.md b/README.md deleted file mode 100644 index a00cdd8..0000000 --- a/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# www -the contents of the web site - -# Prerequisites to build - - - make - - perl - - [roffit](https://github.com/bagder/roffit) - - [fcpp](https://github.com/bagder/fcpp) - -Create symlink to the source tree: - - $ ln -s [git source tree] ares-cvs - -# build - - $ make - diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..e324e82 --- /dev/null +++ b/_config.yml @@ -0,0 +1,44 @@ +# Welcome to Jekyll! +# +# This config file is meant for settings that affect your whole blog, values +# which you are expected to set up once and rarely edit after that. If you find +# yourself editing this file very often, consider using Jekyll's data files +# feature for the data you need to update frequently. +# +# For technical reasons, this file is *NOT* reloaded automatically when you use +# 'bundle exec jekyll serve'. If you change this file, please restart the server process. + +# Site settings +# These are used to personalize your new site. If you look in the HTML files, +# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on. +# You can create any custom variable you would like, and they will be accessible +# in the templates via {{ site.myvariable }}. +title: "c-ares: a modern asynchronous DNS resolver" +description: >- + c-ares is a modern DNS (stub) resolver library, written in C. It provides + interfaces for asynchronous queries while trying to abstract the intricacies + of the underlying DNS protocol. It was originally intended for applications + which need to perform DNS queries without blocking, or need to perform multiple + DNS queries in parallel. +domain: c-ares.org +baseurl: "" # the subpath of your site, e.g. /blog +url: "https://c-ares.org" +github_username: c-ares + +# Build settings +markdown: GFM +theme: minima +plugins: +# - jekyll-feed + +# Exclude from processing. +# The following items will not be processed, by default. Create a custom list +# to override the default setting. +exclude: + - Gemfile + - Gemfile.lock + - c-ares.git + - roffit.git + - Makefile + - docs/*.raw + - .deps diff --git a/_includes/footer.html b/_includes/footer.html new file mode 100644 index 0000000..14f6fdf --- /dev/null +++ b/_includes/footer.html @@ -0,0 +1,10 @@ +
    + +
    +
    + {%- include social.html -%} + © 2024 the c-ares project and its contributors +
    +
    + +
    diff --git a/_includes/header.html b/_includes/header.html new file mode 100644 index 0000000..110ff79 --- /dev/null +++ b/_includes/header.html @@ -0,0 +1,30 @@ +
    diff --git a/manpage.css b/_sass/manpages.scss similarity index 84% rename from manpage.css rename to _sass/manpages.scss index 72cc149..178ad66 100644 --- a/manpage.css +++ b/_sass/manpages.scss @@ -1,12 +1,12 @@ -pre.level0, P.level0 { +pre.level0, p.level0 { padding-left: 2em; } -pre.level1, P.level1 { +pre.level1, p.level1 { padding-left: 4em; } -pre.level2, P.level2 { +pre.level2, p.level2 { padding-left: 6em; } @@ -37,3 +37,4 @@ p.roffit { text-align: center; font-size: 80%; } + diff --git a/adv_20160929.md b/adv_20160929.md index fabe3af..a5ff93b 100644 --- a/adv_20160929.md +++ b/adv_20160929.md @@ -1,3 +1,6 @@ +--- +layout: page +--- `ares_create_query` single byte out of buffer write ================================================= diff --git a/adv_20160929.t b/adv_20160929.t deleted file mode 100644 index 6653255..0000000 --- a/adv_20160929.t +++ /dev/null @@ -1,15 +0,0 @@ -#include "doctype.t" - -ares_create_query single byte out of buffer write -#include "css.t" - -#include "body.t" -#include "setup.t" -#include "menu.t" - -TITLE(CVE-2016-5180) -BOXTOP -#include "adv_20160929.gen" -BOXBOT - -#include "footer.t" diff --git a/adv_20170620.md b/adv_20170620.md index c3add51..4a23239 100644 --- a/adv_20170620.md +++ b/adv_20170620.md @@ -1,3 +1,7 @@ +--- +layout: page +--- + c-ares NAPTR parser out of bounds access ======================================== diff --git a/adv_20170620.t b/adv_20170620.t deleted file mode 100644 index ee9c113..0000000 --- a/adv_20170620.t +++ /dev/null @@ -1,15 +0,0 @@ -#include "doctype.t" - -ares_create_query single byte out of buffer write -#include "css.t" - -#include "body.t" -#include "setup.t" -#include "menu.t" - -TITLE(CVE-2017-1000381) -BOXTOP -#include "adv_20170620.gen" -BOXBOT - -#include "footer.t" diff --git a/adv_20210810.md b/adv_20210810.md index 83d71c1..2cc3023 100644 --- a/adv_20210810.md +++ b/adv_20210810.md @@ -1,3 +1,7 @@ +--- +layout: page +--- + Missing input validation on hostnames returned by DNS servers ============================================================= diff --git a/adv_20210810.t b/adv_20210810.t deleted file mode 100644 index c5f9253..0000000 --- a/adv_20210810.t +++ /dev/null @@ -1,15 +0,0 @@ -#include "doctype.t" - -Missing input validation on hostnames returned by DNS servers -#include "css.t" - -#include "body.t" -#include "setup.t" -#include "menu.t" - -TITLE(CVE-2021-3672) -BOXTOP -#include "adv_20210810.gen" -BOXBOT - -#include "footer.t" diff --git a/download/historic/ares-1.1.1.tar.gz b/archive/ares-1.1.1.tar.gz similarity index 100% rename from download/historic/ares-1.1.1.tar.gz rename to archive/ares-1.1.1.tar.gz diff --git a/download/historic/c-ares-1.0.0.tar.gz b/archive/c-ares-1.0.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.0.0.tar.gz rename to archive/c-ares-1.0.0.tar.gz diff --git a/download/historic/c-ares-1.1.0.tar.gz b/archive/c-ares-1.1.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.1.0.tar.gz rename to archive/c-ares-1.1.0.tar.gz diff --git a/download/historic/c-ares-1.10.0.tar.gz b/archive/c-ares-1.10.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.10.0.tar.gz rename to archive/c-ares-1.10.0.tar.gz diff --git a/download/historic/c-ares-1.10.0.tar.gz.asc b/archive/c-ares-1.10.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.10.0.tar.gz.asc rename to archive/c-ares-1.10.0.tar.gz.asc diff --git a/download/historic/c-ares-1.11.0.tar.gz b/archive/c-ares-1.11.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.11.0.tar.gz rename to archive/c-ares-1.11.0.tar.gz diff --git a/download/historic/c-ares-1.11.0.tar.gz.asc b/archive/c-ares-1.11.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.11.0.tar.gz.asc rename to archive/c-ares-1.11.0.tar.gz.asc diff --git a/download/historic/c-ares-1.12.0.tar.gz b/archive/c-ares-1.12.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.12.0.tar.gz rename to archive/c-ares-1.12.0.tar.gz diff --git a/download/historic/c-ares-1.12.0.tar.gz.asc b/archive/c-ares-1.12.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.12.0.tar.gz.asc rename to archive/c-ares-1.12.0.tar.gz.asc diff --git a/download/historic/c-ares-1.13.0.tar.gz b/archive/c-ares-1.13.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.13.0.tar.gz rename to archive/c-ares-1.13.0.tar.gz diff --git a/download/historic/c-ares-1.13.0.tar.gz.asc b/archive/c-ares-1.13.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.13.0.tar.gz.asc rename to archive/c-ares-1.13.0.tar.gz.asc diff --git a/download/historic/c-ares-1.2.0.tar.gz b/archive/c-ares-1.2.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.2.0.tar.gz rename to archive/c-ares-1.2.0.tar.gz diff --git a/download/historic/c-ares-1.2.1.tar.gz b/archive/c-ares-1.2.1.tar.gz similarity index 100% rename from download/historic/c-ares-1.2.1.tar.gz rename to archive/c-ares-1.2.1.tar.gz diff --git a/download/historic/c-ares-1.2.1.tar.gz.asc b/archive/c-ares-1.2.1.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.2.1.tar.gz.asc rename to archive/c-ares-1.2.1.tar.gz.asc diff --git a/download/historic/c-ares-1.3.0.tar.gz b/archive/c-ares-1.3.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.3.0.tar.gz rename to archive/c-ares-1.3.0.tar.gz diff --git a/download/historic/c-ares-1.3.0.tar.gz.asc b/archive/c-ares-1.3.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.3.0.tar.gz.asc rename to archive/c-ares-1.3.0.tar.gz.asc diff --git a/download/historic/c-ares-1.3.1.tar.gz b/archive/c-ares-1.3.1.tar.gz similarity index 100% rename from download/historic/c-ares-1.3.1.tar.gz rename to archive/c-ares-1.3.1.tar.gz diff --git a/download/historic/c-ares-1.3.1.tar.gz.asc b/archive/c-ares-1.3.1.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.3.1.tar.gz.asc rename to archive/c-ares-1.3.1.tar.gz.asc diff --git a/download/historic/c-ares-1.3.2.tar.gz b/archive/c-ares-1.3.2.tar.gz similarity index 100% rename from download/historic/c-ares-1.3.2.tar.gz rename to archive/c-ares-1.3.2.tar.gz diff --git a/download/historic/c-ares-1.3.2.tar.gz.asc b/archive/c-ares-1.3.2.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.3.2.tar.gz.asc rename to archive/c-ares-1.3.2.tar.gz.asc diff --git a/download/historic/c-ares-1.4.0.tar.gz b/archive/c-ares-1.4.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.4.0.tar.gz rename to archive/c-ares-1.4.0.tar.gz diff --git a/download/historic/c-ares-1.4.0.tar.gz.asc b/archive/c-ares-1.4.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.4.0.tar.gz.asc rename to archive/c-ares-1.4.0.tar.gz.asc diff --git a/download/historic/c-ares-1.5.0.tar.gz b/archive/c-ares-1.5.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.5.0.tar.gz rename to archive/c-ares-1.5.0.tar.gz diff --git a/download/historic/c-ares-1.5.0.tar.gz.asc b/archive/c-ares-1.5.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.5.0.tar.gz.asc rename to archive/c-ares-1.5.0.tar.gz.asc diff --git a/download/historic/c-ares-1.5.1.tar.gz b/archive/c-ares-1.5.1.tar.gz similarity index 100% rename from download/historic/c-ares-1.5.1.tar.gz rename to archive/c-ares-1.5.1.tar.gz diff --git a/download/historic/c-ares-1.5.1.tar.gz.asc b/archive/c-ares-1.5.1.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.5.1.tar.gz.asc rename to archive/c-ares-1.5.1.tar.gz.asc diff --git a/download/historic/c-ares-1.5.2.tar.gz b/archive/c-ares-1.5.2.tar.gz similarity index 100% rename from download/historic/c-ares-1.5.2.tar.gz rename to archive/c-ares-1.5.2.tar.gz diff --git a/download/historic/c-ares-1.5.2.tar.gz.asc b/archive/c-ares-1.5.2.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.5.2.tar.gz.asc rename to archive/c-ares-1.5.2.tar.gz.asc diff --git a/download/historic/c-ares-1.5.3.tar.gz b/archive/c-ares-1.5.3.tar.gz similarity index 100% rename from download/historic/c-ares-1.5.3.tar.gz rename to archive/c-ares-1.5.3.tar.gz diff --git a/download/historic/c-ares-1.5.3.tar.gz.asc b/archive/c-ares-1.5.3.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.5.3.tar.gz.asc rename to archive/c-ares-1.5.3.tar.gz.asc diff --git a/download/historic/c-ares-1.6.0.tar.gz b/archive/c-ares-1.6.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.6.0.tar.gz rename to archive/c-ares-1.6.0.tar.gz diff --git a/download/historic/c-ares-1.6.0.tar.gz.asc b/archive/c-ares-1.6.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.6.0.tar.gz.asc rename to archive/c-ares-1.6.0.tar.gz.asc diff --git a/download/historic/c-ares-1.7.0.tar.gz b/archive/c-ares-1.7.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.7.0.tar.gz rename to archive/c-ares-1.7.0.tar.gz diff --git a/download/historic/c-ares-1.7.0.tar.gz.asc b/archive/c-ares-1.7.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.7.0.tar.gz.asc rename to archive/c-ares-1.7.0.tar.gz.asc diff --git a/download/historic/c-ares-1.7.1.tar.gz b/archive/c-ares-1.7.1.tar.gz similarity index 100% rename from download/historic/c-ares-1.7.1.tar.gz rename to archive/c-ares-1.7.1.tar.gz diff --git a/download/historic/c-ares-1.7.1.tar.gz.asc b/archive/c-ares-1.7.1.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.7.1.tar.gz.asc rename to archive/c-ares-1.7.1.tar.gz.asc diff --git a/download/historic/c-ares-1.7.2.tar.gz b/archive/c-ares-1.7.2.tar.gz similarity index 100% rename from download/historic/c-ares-1.7.2.tar.gz rename to archive/c-ares-1.7.2.tar.gz diff --git a/download/historic/c-ares-1.7.2.tar.gz.asc b/archive/c-ares-1.7.2.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.7.2.tar.gz.asc rename to archive/c-ares-1.7.2.tar.gz.asc diff --git a/download/historic/c-ares-1.7.3.tar.gz b/archive/c-ares-1.7.3.tar.gz similarity index 100% rename from download/historic/c-ares-1.7.3.tar.gz rename to archive/c-ares-1.7.3.tar.gz diff --git a/download/historic/c-ares-1.7.3.tar.gz.asc b/archive/c-ares-1.7.3.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.7.3.tar.gz.asc rename to archive/c-ares-1.7.3.tar.gz.asc diff --git a/download/historic/c-ares-1.7.4.tar.gz b/archive/c-ares-1.7.4.tar.gz similarity index 100% rename from download/historic/c-ares-1.7.4.tar.gz rename to archive/c-ares-1.7.4.tar.gz diff --git a/download/historic/c-ares-1.7.4.tar.gz.asc b/archive/c-ares-1.7.4.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.7.4.tar.gz.asc rename to archive/c-ares-1.7.4.tar.gz.asc diff --git a/download/historic/c-ares-1.7.5.tar.gz b/archive/c-ares-1.7.5.tar.gz similarity index 100% rename from download/historic/c-ares-1.7.5.tar.gz rename to archive/c-ares-1.7.5.tar.gz diff --git a/download/historic/c-ares-1.7.5.tar.gz.asc b/archive/c-ares-1.7.5.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.7.5.tar.gz.asc rename to archive/c-ares-1.7.5.tar.gz.asc diff --git a/download/historic/c-ares-1.8.0.tar.gz b/archive/c-ares-1.8.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.8.0.tar.gz rename to archive/c-ares-1.8.0.tar.gz diff --git a/download/historic/c-ares-1.8.0.tar.gz.asc b/archive/c-ares-1.8.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.8.0.tar.gz.asc rename to archive/c-ares-1.8.0.tar.gz.asc diff --git a/download/historic/c-ares-1.9.0.tar.gz b/archive/c-ares-1.9.0.tar.gz similarity index 100% rename from download/historic/c-ares-1.9.0.tar.gz rename to archive/c-ares-1.9.0.tar.gz diff --git a/download/historic/c-ares-1.9.0.tar.gz.asc b/archive/c-ares-1.9.0.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.9.0.tar.gz.asc rename to archive/c-ares-1.9.0.tar.gz.asc diff --git a/download/historic/c-ares-1.9.1.tar.gz b/archive/c-ares-1.9.1.tar.gz similarity index 100% rename from download/historic/c-ares-1.9.1.tar.gz rename to archive/c-ares-1.9.1.tar.gz diff --git a/download/historic/c-ares-1.9.1.tar.gz.asc b/archive/c-ares-1.9.1.tar.gz.asc similarity index 100% rename from download/historic/c-ares-1.9.1.tar.gz.asc rename to archive/c-ares-1.9.1.tar.gz.asc diff --git a/ares_func.t b/ares_func.t deleted file mode 100644 index 455c570..0000000 --- a/ares_func.t +++ /dev/null @@ -1,15 +0,0 @@ -#include "doctype.t" - -func() -#include "css.t" -#include "manpage.t" - -#include "body.t" -#include "setup.t" -#include "menu.t" -TITLE(func) -BOXTOP -#include "docmenu.t" -#include funcinc -BOXBOT -#include "footer.t" diff --git a/cares-big.png b/art/cares-big.png similarity index 100% rename from cares-big.png rename to art/cares-big.png diff --git a/old-cares-big.png b/art/old-cares-big.png similarity index 100% rename from old-cares-big.png rename to art/old-cares-big.png diff --git a/old-cares-icon.png b/art/old-cares-icon.png similarity index 100% rename from old-cares-icon.png rename to art/old-cares-icon.png diff --git a/assets/c-ares-logo.svg b/assets/c-ares-logo.svg new file mode 100644 index 0000000..96c5c59 --- /dev/null +++ b/assets/c-ares-logo.svg @@ -0,0 +1,85 @@ + + +Created with Fabric.js 5.3.0 + + + + + diff --git a/assets/main.scss b/assets/main.scss new file mode 100644 index 0000000..ac82407 --- /dev/null +++ b/assets/main.scss @@ -0,0 +1,5 @@ +--- +--- +@import "minima"; +@import "manpages"; + diff --git a/body.t b/body.t deleted file mode 100644 index 335eec5..0000000 --- a/body.t +++ /dev/null @@ -1 +0,0 @@ - diff --git a/cares.css b/cares.css deleted file mode 100644 index 024fdda..0000000 --- a/cares.css +++ /dev/null @@ -1,83 +0,0 @@ -BODY { - background-color: #ffffff; - max-width: 50em; - margin-left: auto; - margin-right: auto; -} - -P { - font-family: sans-serif; - color: black; - background-color: white; - padding-left: 5px; -} - -.title { - padding-bottom: 10px; - font-family: arial, helvetica, ariel, sans-serif; - color: black; - font-size: 200%; - font-weight: bold; -} - -.subtitle { - border-bottom: solid 1px black; - font-family: arial, helvetica, ariel, sans-serif; - font-size: 140%; -} - -.box { -} - -/* the left-side menu */ -.menu { - border-color: black; - border-width: 1px; - border-style: solid; - color: #000000; - background-color: #ffffff; - text-align: left; - padding: 2px 2px 2px 2px; -} - -.menu a { - text-decoration: none; - font-family: sans-serif; -} - -.funcmenu { - border: outset 1px #000000; - float: right; - background: #ffffff; - padding: 4px 4px 4px 4px; -} - -.funcmenu a { - text-decoration: none; - font-family: sans-serif; - color: #003000; - padding: 0px 0px 0px 0px; -} - -.funcmenu div { - padding: 1px 1px 1px 1px; -} - -.itemselect { - background-color: #e0e0ff; -} - -/* a non-selected item in the main menu, with the mouse hovering */ -.funcmenu a:hover { - text-decoration: none; - background-color: #e0e0ff; - color: #000000; - white-space: nowrap; - padding: 0px 0px 0px 0px; - font-family: sans-serif; -} - -tr.odd { - color: #000000; - background-color: #e0e0ff; -} diff --git a/cares.pm b/cares.pm deleted file mode 100644 index fa0bcdc..0000000 --- a/cares.pm +++ /dev/null @@ -1,22 +0,0 @@ - -sub header { - my ($t) = @_; - print "Content-Type: text/html\n\n"; - open (HEAD, "mailhead.html"); - while() { - $_ =~ s:^c-ares<\/title>:<title>$t<\/title>:; - $_ =~ s:^<h1>_PAGE_<\/h1>:<h1>$t<\/h1>:; - print $_; - } - close(HEAD); -} - -sub footer { - open (FOOT, "footer.t"); - while(<FOOT>) { - print $_; - } - close(FOOT); -} - -1; diff --git a/changelog.md b/changelog.md index 461a3d0..7de9e1d 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,39 @@ +--- +layout: page +title: Changelog +--- +<a name="1_32_0"></a> +## c-ares version 1.32.0 - July 4 2024 + +This is a feature and bugfix release. + +Features: + +* Add support for DNS 0x20 to help prevent cache poisoning attacks, enabled + by specifying `ARES_FLAG_DNS0x20`. Disabled by default. [PR #800](https://github.com/c-ares/c-ares/pull/800) +* Rework query timeout logic to automatically adjust timeouts based on network + conditions. The timeout specified now is only used as a hint until there + is enough history to calculate a more valid timeout. [PR #794](https://github.com/c-ares/c-ares/pull/794) + +Changes: + +* DNS RR TXT strings should not be automatically concatenated as there are use + cases outside of RFC 7208. In order to maintain ABI compliance, the ability + to retrieve TXT strings concatenated is retained as well as a new API to + retrieve the individual strings. This restores behavior from c-ares 1.20.0. + [PR #801](https://github.com/c-ares/c-ares/pull/801) +* Clean up header inclusion logic to make hacking on code easier. [PR #797](https://github.com/c-ares/c-ares/pull/797) +* GCC/Clang: Enable even more strict warnings to catch more coding flaws. [253bdee](https://github.com/c-ares/c-ares/commit/253bdee) +* MSVC: Enable `/W4` warning level. [PR #792](https://github.com/c-ares/c-ares/pull/792) + +Bugfixes: + +* Tests: Fix thread race condition in test cases for EventThread. [PR #803](https://github.com/c-ares/c-ares/pull/803) +* Windows: Fix building with UNICODE. [PR #802](https://github.com/c-ares/c-ares/pull/802) +* Thread Saftey: `ares_timeout()` was missing lock. [74a64e4](https://github.com/c-ares/c-ares/commit/74a64e4) +* Fix building with DJGPP (32bit protected mode DOS). [PR #789](https://github.com/c-ares/c-ares/pull/789) + + <a name="1_31_0"></a> ## c-ares version 1.31.0 - June 18 2024 diff --git a/changelog.t b/changelog.t deleted file mode 100644 index a6c1b16..0000000 --- a/changelog.t +++ /dev/null @@ -1,13 +0,0 @@ -#include "doctype.t" -<head> -<title>c-ares changelog -#include "css.t" - -#include "body.t" -#include "setup.t" -#include "menu.t" -TITLE(c-ares changes over time) -BOXTOP -#include "changelog.gen" -BOXBOT -#include "footer.t" diff --git a/css.t b/css.t deleted file mode 100644 index bbdc78a..0000000 --- a/css.t +++ /dev/null @@ -1 +0,0 @@ - diff --git a/date.pm b/date.pm deleted file mode 100644 index 562bcef..0000000 --- a/date.pm +++ /dev/null @@ -1,237 +0,0 @@ -sub MonthLen { - my ($month, $year) = @_; # month index (1-12) - # year to check (for leap) - - while($month>12) { - $month-=12; - } - if($month<1) { - $month=1; - } - - @mlens = (31, - 28, # checked especially - 31, - 30, - 31, - 30, - 31, - 31, - 30, - 31, - 30, - 31); - - if( $month eq 2) { - # February mean leap year troubles... - local $len = 28; - if( (int($year/4)*4 eq $year) && - (!(int($year/100)*100 eq $year) || - int($year/400)*400 eq $year)) { - $len = 29; - } - return $len; - } - else { - return $mlens[$month-1]; - } -} - -# Return the month name of the index given -sub MonthName { - my $num=$_[0]; - - my @mname = ('januari', - 'februari', - 'mars', - 'april', - 'maj', - 'juni', - 'juli', - 'augusti', - 'september', - 'oktober', - 'november', - 'december' ); - - while( $num > 12 ) { - $num -= 12; - } - if ($num < 1) { - $num = 1; - } - return $mname[$num-1]; - -} - -# Return the month name of the index given, in english -sub MonthNameEng { - my $num=$_[0]; - - my @mname = ('January', - 'February', - 'March', - 'April', - 'May', - 'June', - 'July', - 'August', - 'September', - 'October', - 'November', - 'December' ); - - while( $num > 12 ) { - $num -= 12; - } - if ($num < 1) { - $num = 1; - } - return $mname[$num-1]; - -} - - -# Return the day name of the index given -sub DayName { - my $num=$_[0]; - - my @dname = ('måndag', - 'tisdag', - 'onsdag', - 'torsdag', - 'fredag', - 'lördag', - 'söndag'); - - while( $num > 7 ) { - $num -= 7; - } - if ($num < 1) { - $num = 1; - } - return $dname[$num-1]; - -} - -# Return the english day name of the index given -sub DayNameEng { - my $num=$_[0]; - - my @dname = ('Monday', - 'Tuesday', - 'Wednesday', - 'Thursday', - 'Friday', - 'Saturday', - 'Sunday'); - - while( $num > 7 ) { - $num -= 7; - } - if ($num < 1) { - $num = 1; - } - return $dname[$num-1]; - -} - - -# Display a full range of all months as listview options -# The argument number sets the one to be selected -sub MonthOptions { - my $select = $_[0]; - my $i; - my $result=""; - for($i=1; $i<=12; $i++) { - my $name = MonthName($i); - if( $i == $select) { - $result=$result."