blob: d026fe809408c525ab996f9e2bfb3759689dc8c3 [file]
<!DOCTYPE html SYSTEM "about:legacy-compat">
<html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="width=device-width, initial-scale=1" name="viewport">
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>API Changes in Apache HTTP Server 2.6 since 2.4 - Apache HTTP Server Version 2.5</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet">
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size">
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css"><link rel="stylesheet" type="text/css" href="../style/css/prettify.css">
<script src="../style/scripts/prettify.min.js">
</script>
<link href="../images/favicon.png" rel="shortcut icon"></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Report a bug</a></p>
<p class="apache">Apache HTTP Server Version 2.5</p>
<img alt="" src="../images/feather.png"></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif"></a></div>
<div id="path">
<a href="https://www.apache.org/">Apache</a> &gt; <a href="https://httpd.apache.org/">HTTP Server</a> &gt; <a href="https://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>API Changes in Apache HTTP Server 2.6 since 2.4</h1>
<button aria-label="Toggle language list" class="lang-toggle"><svg xmlns="http://www.w3.org/2000/svg" stroke-width="2" stroke="currentColor" fill="none" viewBox="0 0 24 24" height="16" width="16"><circle r="10" cy="12" cx="12"/><line y2="12" x2="22" y1="12" x1="2"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg></button>
<div class="toplang">
<p><span>Available Languages: </span><a href="../en/developer/new_api_2_6.html" title="English">&nbsp;en&nbsp;</a></p>
</div>
<p>This document describes changes to the Apache HTTPD API from
version 2.4 to 2.6, that may be of interest to module/application
developers and core hacks. As of the first GA release of the
2.6 branch API compatibility is preserved for the life of the
2.6 branch. (The
<a href="http://svn.apache.org/repos/asf/httpd/httpd/branches/2.6.x/VERSIONING">VERSIONING</a>
description for the 2.6 release provides more information about API
compatibility.)</p>
<p>API changes fall into two categories: APIs that are altogether new,
and existing APIs that are expanded or changed. The latter are
further divided into those where all changes are backwards-compatible
(so existing modules can ignore them), and those that might
require attention by maintainers. As with the transition from
HTTPD 2.2 to 2.4, existing modules and applications will require
recompiling and may call for some attention, but most should not
require any substantial updating (although some may be able to
take advantage of API changes to offer significant improvements).</p>
<p>For the purpose of this document, the API is split according
to the public header files. These headers are themselves the
reference documentation, and can be used to generate a browsable
HTML reference with <code>make docs</code>.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif"> <a href="#api_changes">Changed APIs</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#upgrading">Specific information on upgrading modules from 2.4</a></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="api_changes">Changed APIs <a title="Permanent link" href="#api_changes" class="permalink">&para;</a></h2>
<h3 id="ap_fill_me_in">ap_fill_me_in (NEW!)</h3>
<p>Introduces a new API to fill me in.</p>
<h3 id="http_request">http_request (changed)</h3>
<ul>
<li>New autht_provider API</li>
<li>New <code>token_checker</code> hook to handle authentication based on
mechanisms other than username and password.</li>
<li>New function <code>ap_hook_check_autht</code>, as an addition to
<code>ap_hook_check_authn</code> and <code>ap_hook_check_authz</code>.</li>
</ul>
<h3 id="mod_auth">mod_auth (changed)</h3>
<p>Adds an additional provider framework for autht - token authentication.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="upgrading">Specific information on upgrading modules from 2.4 <a title="Permanent link" href="#upgrading" class="permalink">&para;</a></h2>
<h3 id="upgrading_fillmein">Fill me in</h3>
<p>In order to take advantage of fill me in.</p>
<h3 id="upgrading_byfunction">If your module uses these existing APIs...</h3>
<dl>
<dt><code>ap_md5digest()</code> / <code>ap_md5contextTo64</code></dt>
<dd>These functions are no longer available. Use the equivalent functions
from APR if needed.</dd>
</dl>
<h3 id="upgrading_byfeature">If your module interfaces with this feature...</h3>
<dl>
<dt>fillmin</dt>
<dd>Optional: If your module fills me in.</dd>
</dl>
<h3 id="upgrading_newfeatures">Does your module...</h3>
<dl>
<dt>Fill me in</dt>
<dd>Consider if filling me in.</dd>
</dl>
</div></div>
<div class="bottomlang">
<p><span>Available Languages: </span><a href="../en/developer/new_api_2_6.html" title="English">&nbsp;en&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 2026 The Apache Software Foundation.<br>Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Report a bug</a></p></div><script><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
var langToggle = document.querySelector('.lang-toggle');
var topLang = document.querySelector('.toplang');
if (langToggle && topLang) {
langToggle.addEventListener('click', function() { topLang.classList.toggle('open'); });
}
var qv = document.getElementById('quickview');
if (qv) {
document.body.appendChild(qv);
var qvBtn = document.createElement('button');
qvBtn.className = 'qv-toggle';
qvBtn.setAttribute('aria-label', 'Toggle page navigation');
qvBtn.innerHTML = '&#9776;';
document.body.appendChild(qvBtn);
qvBtn.addEventListener('click', function() {
var isOpen = qv.classList.toggle('open');
if (isOpen) {
qv.style.top = window.scrollY + 10 + 'px';
}
});
window.addEventListener('scroll', function() { qv.classList.remove('open'); });
}
//--><!]]></script>
</body></html>