mpm.h revision a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding/* Licensed to the Apache Software Foundation (ASF) under one or more
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * contributor license agreements. See the NOTICE file distributed with
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * this work for additional information regarding copyright ownership.
b99dbaab171d91e1b664397cc40e039d0c087c65fielding * The ASF licenses this file to You under the Apache License, Version 2.0
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * (the "License"); you may not use this file except in compliance with
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * the License. You may obtain a copy of the License at
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding *
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * http://www.apache.org/licenses/LICENSE-2.0
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding *
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * Unless required by applicable law or agreed to in writing, software
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * distributed under the License is distributed on an "AS IS" BASIS,
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * See the License for the specific language governing permissions and
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * limitations under the License.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding */
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding/**
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * @file prefork/mpm.h
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * @brief Unix Prefork MPM (default for Uinx systems)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding *
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * @defgroup APACHE_MPM_PREFORK Unix Prefork
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * @ingroup APACHE_MPM APACHE_OS_UNIX
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * @{
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding */
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#include "httpd.h"
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#include "mpm_default.h"
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#include "scoreboard.h"
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#include "unixd.h"
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#ifndef APACHE_MPM_PREFORK_H
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define APACHE_MPM_PREFORK_H
64185f9824e42f21ca7b9ae6c004484215c031a7rbb
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define PREFORK_MPM
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define MPM_NAME "Prefork"
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_RECLAIM_CHILD_PROCESSES
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define AP_MPM_WANT_WAIT_OR_TIMEOUT
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_PROCESS_CHILD_STATUS
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_PIDFILE
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_SCOREBOARD
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_LOCKFILE
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_MAX_REQUESTS
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_COREDUMPDIR
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_ACCEPT_LOCK_MECH
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define AP_MPM_WANT_SIGNAL_SERVER
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define AP_MPM_WANT_SET_MAX_MEM_FREE
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define AP_MPM_WANT_FATAL_SIGNAL_HANDLER
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_WANT_SET_GRACEFUL_SHUTDOWN
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define AP_MPM_DISABLE_NAGLE_ACCEPTED_SOCK
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define AP_MPM_USES_POD 1
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define MPM_CHILD_PID(i) (ap_scoreboard_image->parent[i].pid)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define MPM_NOTE_CHILD_KILLED(i) (MPM_CHILD_PID(i) = 0)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#define MPM_ACCEPT_FUNC ap_unixd_accept
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingextern int ap_threads_per_child;
3568de757bac0b47256647504c186d17ca272f85rbbextern int ap_max_daemons_limit;
3568de757bac0b47256647504c186d17ca272f85rbbextern server_rec *ap_server_conf;
3568de757bac0b47256647504c186d17ca272f85rbb#endif /* APACHE_MPM_PREFORK_H */
3568de757bac0b47256647504c186d17ca272f85rbb/** @} */
3568de757bac0b47256647504c186d17ca272f85rbb