You can define here what is acceptable as a password. You control
the minimum length and the number of non alpha characters. By
forcing passwords made with other characters, you encourage
the choice of better passwords (hard to guess and crack).
Note that this is not effective on PAM aware systems such as
! Red Hat 5. The PAM library has its own set of rules to
accept/reject a new password.
You can define here what is acceptable as a password. You control
the minimum length and the number of non alpha characters. By
forcing passwords made with other characters, you encourage
the choice of better passwords (hard to guess and crack).
Note that this is not effective on PAM aware systems such as
! Red Hat. The PAM library has its own set of rules to
accept/reject a new password.
+
When this feature is enabled, Linuxconf will create a group
+ having the same name as the user account, unless a group
+ is specified. The dialog for a new account appears with the
+ group field empty.
+
When disabled, Linuxconf assigns a default group to new account (users).
+
This feature is not effective for special accounts such as POP and
+ PPP accounts since those accounts are assigned to a specific group
+ (popusers and pppusers).
+
Note also that this feature does not prevent you from assigning the
+ group you want to an account. If the group does not exist, you will have
+ the opportunity to create it on the fly.
+
This control how the home directory are created. You must enter
+ an octal number representing three triplets. Each triplet represents
+ the bits for read, write and execute(lookup). The first triplet
+ sets the owner access and we generally enter 7 there (the owner has
+ full access in his home directory. The second triplet represents the
+ group access. The last triplet represents the access for everybody else.
+
In general, a value of 750 is suitable. This means that the owner has
+ full access and members of his group have read and lookup access.
+
This check-box control the visibility of the home directory field in
+ the user account dialog. When this check-box is UN-set, the field is
+ not accessible anymore. New accounts are always created in the default
+ directory (you can setup one defaults directory per group) and can't
+ be changed from Linuxconf.
+
The check-box is there to simplify the user account dialog, since the
+ home directory is seldom changed on a per user basis.
+
Note that the account numerical id visibility is also controlled by
+ this check-box.
+
This check-box control the visibility of the login shell field.
+ This is there to simplify the user account dialog, especially in the
+ case where the administrator has defined only one available shell.
Next
*** 1.17r3/linuxconf/help.files/sources/userconf/password-2.html Sun Dec 12 22:07:40 1999
--- 1,17r4/linuxconf/help.files/sources/userconf/password-2.html Tue Feb 22 21:21:21 2000
***************
*** 1,8 ****
!
! Password setting policies: Private group
--- 1,8 ----
!
! Password setting policies: Account defaults
***************
*** 12,30 ****
PreviousContents
!
When this feature is enabled, linuxconf will create a group
! having the same name as the user account, unless a group
! is specified. The dialog for a new account appears with the
! group field empty.
!
When disabled, linuxconf assigns a default group to new account (users).
!
This feature is not effective for special accounts such as POP and
! PPP accounts since those accounts are assigned to a specific group
! (popusers and pppusers).
!
Note also that this feature does not prevent you from assigning the
! group you want to an account. If the group does not exist, you will have
! the opportunity to create it on the fly.
When using shadow passwords, you have control of both the
! password expiration date and also of the account expiration date.
! You can set defaults here. They will be used to setup new accounts.
!
Note that this section only shows up if you have enabled shadow
! password. Some Linux distributions do not support shadow passwords.
! Others do not install them by default. Linuxconf adapts
! to this situation on the fly.
Next
*** 1.17r3/linuxconf/help.files/sources/userconf/password-3.html Sun Dec 12 22:07:40 1999
--- 1,17r4/linuxconf/help.files/sources/userconf/password-3.html Tue Feb 22 21:21:21 2000
***************
*** 1,24 ****
!
! Password setting policies: Default base dir for homes
!
! NextPreviousContents
!
When Linuxconf creates or deletes user accounts, it calls various
! scripts. You can override these scripts by entering the path to your
! own versions. You can also disable this process by erasing the path.
! Linuxconf provides default values for some of these scripts.
!
Linuxconf always calls the scripts with the same command line. It
! is built with the following arguments.
!
!
!
--uid userid
!
! This is the userid of the new account
!
!
--name full name
!
! This is the full name (the gecos field) of the account.
!
!
--basehome dir
!
! This is the directory where new accounts are created. This can
! be used by archiving commands to create archives. The
! sample accountarchive.sh (see Pre-delete command below) is
! using that to reach the oldaccounts sub-directory.
!
!
--home home_directory
!
! This is the home directory of the account. Note that the home
! is supplied without the first /. It is supplied as a relative
! path. This helps commands such as tar which complain when
! supplied with an absolute path. So doing a cd / at
! the beginning of your command is recommended..
!
!
--domain domain
!
! This is either / or the virtual email domain. From this
! the proper in-box mail file may be computed.
!
This command (if non empty) is used to delete the account data: the
! HOME directory and the mail in-box folder. When you delete an account,
! a pop-up dialog lets you pick the proper action: Archive the data,
! delete or leave in place.
! A default delete command is supplied, but you can define a new one.
!
A default archiving command is supplied. It preserves the HOME
! directory and the mail in-box folder in a compressed tar file. This
! file is stored in /home/oldaccounts. The name of the file has the
! following format
!
!
!
! user-YYYY-MM-DD-PID.tar.gz
!
!
!
!
The PID is simply the process ID of the archive command. This is used
! to make the name fully unique.
!
Files archived in /home/oldaccounts are left there forever. You may
! want to clean out the old ones from time to time, according to the
! administration policies applying to your organization.
!
You can use this field to specify your own archiving command.
!
Each time you create a user account, a command may be executed. You
! must specify here the absolute path of the command as well as any
! arguments.
!
Note that this command is called after the account has been created
! and committed in the password database (/etc/passwd). The
! output and error codes of the command are logged in the
! "Linuxconf's logs".
!
You can specify a command which is executed before the account
! is removed from the password database (/etc/passwd).
! Output and error codes are also logged. If any error is detected, the
! user will be allowed to see the logs and will be asked if the accounts
! should be deleted.
!
! Next
PreviousContents
*** 1.17r3/linuxconf/help.files/sources/userconf/password.help Sun Dec 12 22:07:40 1999
--- 1,17r4/linuxconf/help.files/sources/userconf/password.help Tue Feb 22 21:21:20 2000
***************
*** 2,26 ****
Introduction
! 11.. PPoolliicciieess ffoorr ppaasssswwoorrdd
You can define here what is acceptable as a password. You control the
minimum length and the number of non alpha characters. By forcing
passwords made with other characters, you encourage the choice of
better passwords (hard to guess and crack).
! Note that this is not effective on PAM aware systems such as _R_e_d _H_a_t
! _5. The PAM library has its own set of rules to accept/reject a new
password.
! 22.. PPrriivvaattee ggrroouupp
! When this feature is enabled, linuxconf will create a group having the
same name as the user account, unless a group is specified. The dialog
for a new account appears with the group field empty.
! When disabled, linuxconf assigns a default group to new account
(users).
This feature is not effective for special accounts such as POP and PPP
--- 2,29 ----
Introduction
! 11.. PPoolliicciieess
!
!
! 11..11.. PPoolliicciieess ffoorr ppaasssswwoorrdd
You can define here what is acceptable as a password. You control the
minimum length and the number of non alpha characters. By forcing
passwords made with other characters, you encourage the choice of
better passwords (hard to guess and crack).
! Note that this is not effective on PAM aware systems such as _R_e_d _H_a_t.
! The PAM library has its own set of rules to accept/reject a new
password.
! 11..22.. PPrriivvaattee ggrroouupp
! When this feature is enabled, Linuxconf will create a group having the
same name as the user account, unless a group is specified. The dialog
for a new account appears with the group field empty.
! When disabled, Linuxconf assigns a default group to new account
(users).
This feature is not effective for special accounts such as POP and PPP
***************
*** 32,52 ****
have the opportunity to create it on the fly.
! 33.. DDeeffaauulltt bbaassee ddiirr ffoorr hhoommeess
Specify the base directory which will be used to create new user
accounts. It defaults to /home.
- 44.. UUsseerr ddeeffiinneedd aaccccoouunntt mmaannaaggeemmeenntt ccoommmmaannddss
! When linuxconf creates or deletes user accounts, it calls various
scripts. You can override these scripts by entering the path to your
own versions. You can also disable this process by erasing the path.
Linuxconf provides default values for some of these scripts.
! 44..11.. CCoommmmaanndd lliinnee aarrgguummeennttss
Linuxconf always calls the scripts with the same command line. It is
built with the following arguments.
--- 35,112 ----
have the opportunity to create it on the fly.
! 11..33.. DDeeffaauulltt bbaassee ddiirreeccttoorryy ffoorr hhoommeess
Specify the base directory which will be used to create new user
accounts. It defaults to /home.
! 11..44.. CCrreeaattiioonn ppeerrmmiissssiioonnss
!
! This control how the home directory are created. You must enter an
! octal number representing three triplets. Each triplet represents the
! bits for read, write and execute(lookup). The first triplet sets the
! owner access and we generally enter 7 there (the owner has full access
! in his home directory. The second triplet represents the group access.
! The last triplet represents the access for everybody else.
!
! In general, a value of 750 is suitable. This means that the owner has
! full access and members of his group have read and lookup access.
!
!
! 11..55.. SShhooww tthhee sshhaaddooww ppaarraammeetteerrss
!
! This control the visibility of the parameters defined in /etc/shadow.
! A complete section of a user account is either shown or hidden.
!
! The check-box is there to simplify the user account dialog, since the
! shadow parameters are seldom used.
!
!
! 11..66.. MMaayy cchhaannggee tthhee HHOOMMEE ddiirreeccttoorryy ppaatthh
!
! This check-box control the visibility of the home directory field in
! the user account dialog. When this check-box is UN-set, the field is
! not accessible anymore. New accounts are always created in the default
! directory (you can setup one defaults directory per group) and can't
! be changed from Linuxconf.
!
! The check-box is there to simplify the user account dialog, since the
! home directory is seldom changed on a per user basis.
!
! Note that the account numerical id visibility is also controlled by
! this check-box.
!
!
! 11..77.. MMaayy cchhaannggee tthhee llooggiinn sshheellll
!
! This check-box control the visibility of the login shell field. This
! is there to simplify the user account dialog, especially in the case
! where the administrator has defined only one available shell.
!
!
! 22.. AAccccoouunntt ddeeffaauullttss
!
! When using shadow passwords, you have control of both the password
! expiration date and also of the account expiration date. You can set
! defaults here. They will be used to setup new accounts.
!
! Note that this section only shows up if you have enabled shadow
! password. Some Linux distributions do not support shadow passwords.
! Others do not install them by default. Linuxconf adapts to this
! situation on the fly.
!
!
! 33.. UUsseerr ddeeffiinneedd aaccccoouunntt mmaannaaggeemmeenntt ccoommmmaannddss
!
! When Linuxconf creates or deletes user accounts, it calls various
scripts. You can override these scripts by entering the path to your
own versions. You can also disable this process by erasing the path.
Linuxconf provides default values for some of these scripts.
! 33..11.. CCoommmmaanndd lliinnee aarrgguummeennttss
Linuxconf always calls the scripts with the same command line. It is
built with the following arguments.
***************
*** 82,100 ****
! 44..22.. DDeelleettee aaccccoouunntt ccoommmmaanndd
This command (if non empty) is used to delete the account data: the
! HOME directory and the mail inbox folder. When you delete an account,
a pop-up dialog lets you pick the proper action: Archive the data,
delete or leave in place. A default delete command is supplied, but
you can define a new one.
! 44..33.. AArrcchhiivvee aaccccoouunntt ccoommmmaanndd
A default archiving command is supplied. It preserves the HOME
! directory and the mail inbox folder in a compressed tar file. This
file is stored in /home/oldaccounts. The name of the file has the
following format
--- 142,160 ----
! 33..22.. DDeelleettee aaccccoouunntt ccoommmmaanndd
This command (if non empty) is used to delete the account data: the
! HOME directory and the mail in-box folder. When you delete an account,
a pop-up dialog lets you pick the proper action: Archive the data,
delete or leave in place. A default delete command is supplied, but
you can define a new one.
! 33..33.. AArrcchhiivvee aaccccoouunntt ccoommmmaanndd
A default archiving command is supplied. It preserves the HOME
! directory and the mail in-box folder in a compressed tar file. This
file is stored in /home/oldaccounts. The name of the file has the
following format
***************
*** 116,122 ****
You can use this field to specify your own archiving command.
! 44..44.. PPoosstt--ccrreeaattee ccoommmmaanndd
Each time you create a user account, a command may be executed. You
must specify here the absolute path of the command as well as any
--- 176,182 ----
You can use this field to specify your own archiving command.
! 33..44.. PPoosstt--ccrreeaattee ccoommmmaanndd
Each time you create a user account, a command may be executed. You
must specify here the absolute path of the command as well as any
***************
*** 127,136 ****
error codes of the command are logged in the "Linuxconf's logs".
!
!
!
! 44..55.. PPrree--ddeelleettee ccoommmmaanndd
You can specify a command which is executed before the account is
removed from the password database (/etc/passwd). Output and error
--- 187,193 ----
error codes of the command are logged in the "Linuxconf's logs".
! 33..55.. PPrree--ddeelleettee ccoommmmaanndd
You can specify a command which is executed before the account is
removed from the password database (/etc/passwd). Output and error
***************
*** 139,154 ****
deleted.
- 55.. AAccccoouunntt ddeeffaauullttss
- When using shadow passwords, you have control of both the password
- expiration date and also of the account expiration date. You can set
- defaults here. They will be used to setup new accounts.
! Note that this section only shows up if you have enabled shadow
! password. Some linux distributions do not support shadow passwords.
! Others do not install them by default. Linuxconf adapts to this
! situation on the fly.
--- 196,220 ----
deleted.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
*** 1.17r3/linuxconf/help.files/sources/userconf/password.sgml Sun Oct 25 21:46:49 1998
--- 1,17r4/linuxconf/help.files/sources/userconf/password.sgml Tue Feb 22 21:21:11 2000
***************
*** 3,9 ****
Password setting policies
Introduction
! Policies for password
You can define here what is acceptable as a password. You control
the minimum length and the number of non alpha characters. By
--- 3,11 ----
You can define here what is acceptable as a password. You control
the minimum length and the number of non alpha characters. By
***************
*** 11,27 ****
the choice of better passwords (hard to guess and crack).
Note that this is not effective on PAM aware systems such as
! Private group
! When this feature is enabled, linuxconf will create a group
having the same name as the user account, unless a group
is specified. The dialog for a new account appears with the
group field empty.
! When disabled, linuxconf assigns a default group to new account (users).
This feature is not effective for special accounts such as POP and
PPP accounts since those accounts are assigned to a specific group
--- 13,29 ----
the choice of better passwords (hard to guess and crack).
Note that this is not effective on PAM aware systems such as
! Private group
! When this feature is enabled, Linuxconf will create a group
having the same name as the user account, unless a group
is specified. The dialog for a new account appears with the
group field empty.
! When disabled, Linuxconf assigns a default group to new account (users).
This feature is not effective for special accounts such as POP and
PPP accounts since those accounts are assigned to a specific group
***************
*** 31,44 ****
group you want to an account. If the group does not exist, you will have
the opportunity to create it on the fly.
! Default base dir for homes
Specify the base directory which will be used to create new
user accounts. It defaults to /home.
User defined account management commands
! When linuxconf creates or deletes user accounts, it calls various
scripts. You can override these scripts by entering the path to your
own versions. You can also disable this process by erasing the path.
Linuxconf provides default values for some of these scripts.
--- 33,98 ----
group you want to an account. If the group does not exist, you will have
the opportunity to create it on the fly.
! Default base directory for homes
Specify the base directory which will be used to create new
user accounts. It defaults to /home.
+
+ Creation permissions
+
+ This control how the home directory are created. You must enter
+ an octal number representing three triplets. Each triplet represents
+ the bits for read, write and execute(lookup). The first triplet
+ sets the owner access and we generally enter 7 there (the owner has
+ full access in his home directory. The second triplet represents the
+ group access. The last triplet represents the access for everybody else.
+
+ In general, a value of 750 is suitable. This means that the owner has
+ full access and members of his group have read and lookup access.
+
+ Show the shadow parameters
+
+ This control the visibility of the parameters defined in /etc/shadow.
+ A complete section of a user account is either shown or hidden.
+
+ The check-box is there to simplify the user account dialog, since the
+ shadow parameters are seldom used.
+
+ May change the HOME directory path
+
+ This check-box control the visibility of the home directory field in
+ the user account dialog. When this check-box is UN-set, the field is
+ not accessible anymore. New accounts are always created in the default
+ directory (you can setup one defaults directory per group) and can't
+ be changed from Linuxconf.
+
+ The check-box is there to simplify the user account dialog, since the
+ home directory is seldom changed on a per user basis.
+
+ Note that the account numerical id visibility is also controlled by
+ this check-box.
+
+ May change the login shell
+
+ This check-box control the visibility of the login shell field.
+ This is there to simplify the user account dialog, especially in the
+ case where the administrator has defined only one available shell.
+
+ Account defaults
+
+ When using shadow passwords, you have control of both the
+ password expiration date and also of the account expiration date.
+ You can set defaults here. They will be used to setup new accounts.
+
+ Note that this section only shows up if you have enabled shadow
+ password. Some Linux distributions do not support shadow passwords.
+ Others do not install them by default. Linuxconf adapts
+ to this situation on the fly.
+
User defined account management commands
! When Linuxconf creates or deletes user accounts, it calls various
scripts. You can override these scripts by entering the path to your
own versions. You can also disable this process by erasing the path.
Linuxconf provides default values for some of these scripts.
***************
*** 83,89 ****
Delete account command
This command (if non empty) is used to delete the account data: the
! HOME directory and the mail inbox folder. When you delete an account,
a pop-up dialog lets you pick the proper action: Archive the data,
delete or leave in place.
A default delete command is supplied, but you can define a new one.
--- 137,143 ----
Delete account command
This command (if non empty) is used to delete the account data: the
! HOME directory and the mail in-box folder. When you delete an account,
a pop-up dialog lets you pick the proper action: Archive the data,
delete or leave in place.
A default delete command is supplied, but you can define a new one.
***************
*** 91,97 ****
Archive account command
A default archiving command is supplied. It preserves the HOME
! directory and the mail inbox folder in a compressed tar file. This
file is stored in /home/oldaccounts. The name of the file has the
following format
--- 145,151 ----
Archive account command
A default archiving command is supplied. It preserves the HOME
! directory and the mail in-box folder in a compressed tar file. This
file is stored in /home/oldaccounts. The name of the file has the
following format
***************
*** 127,142 ****
user will be allowed to see the logs and will be asked if the accounts
should be deleted.
- Account defaults
-
- When using shadow passwords, you have control of both the
- password expiration date and also of the account expiration date.
- You can set defaults here. They will be used to setup new accounts.
-
- Note that this section only shows up if you have enabled shadow
- password. Some linux distributions do not support shadow passwords.
- Others do not install them by default. Linuxconf adapts
- to this situation on the fly.
--- 181,186 ----
*** 1.17r3/linuxconf/help.files/sources/inetdconf/FILE_LIST Sat Dec 18 13:38:52 1999
--- 1,17r4/linuxconf/help.files/sources/inetdconf/FILE_LIST Wed Feb 16 14:23:37 2000
***************
*** 1,2 ****
--- 1,4 ----
inetdconf
etcservice
+ hostsallow
+ firewall
*** 1.17r3/linuxconf/help.files/sources/inetdconf/firewall-1.html
--- 1,17r4/linuxconf/help.files/sources/inetdconf/firewall-1.html Wed Feb 16 15:13:20 2000
***************
*** 0 ****
--- 1,34 ----
+
+
+
+
+ Internet firewall: Principles
+
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
Linux offers a standard set of services from the box. These include
+ web-server, telnet, ftp etc. These are normally enabled as default. It
+ may be hard for beginners to determine what these services offer and
+ why they should be inaccessible from the internet.
+
This firewall first determines which these services are by looking at
+ listening services. This list is presented with a button to click
+ if the service is to be accessible from the internet.
+
If the computer offer no services to the internet it may still be a
+ good idea to at least enable one service. That is 113/auth as this
+ will enable other systems to determine who you are when you make
+ connections to them.
+
All input to the internet interface will at first be denied. Ports which
+ are enabled will then be opened and last all ports above 1024 will be
+ opened (these ports will be used for local access toward internet).
+
Any new service which is started in the computer later on will be
+ inaccessible from the internet until the corresponding port is opened.
+
This firewall assumes (for now) that you have a local network
+ with access to the internet. So masquerading
+ is done. This is a technique which enables any computer on the local
+ network to access the internet without letting anyone know you have
+ more than one computer.
+
This firewall also assumes (for now) that forwarding should be enabled in
+ Linux. Otherwise no host on the local network will be able to
+ reach the internet.
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/firewall-5.html
--- 1,17r4/linuxconf/help.files/sources/inetdconf/firewall-5.html Wed Feb 16 15:13:20 2000
***************
*** 0 ****
--- 1,32 ----
+
+
+
+
+ Internet firewall: Dynamic ip addresses
+
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
Dial up connections usually result in different ip addresses for each
+ connection. So there is no way to determine once and for all what address
+ you will get once connected to the internet. In this case the firewall
+ must be activated the moment the connection is made and the address is
+ known. The script /etc/ppp/ip-up (and /etc/ppp/ip-up.local for RedHat)
+ knows the address and will be able to start the firewall.
+
Firewall activation is not inserted in this script (at the moment) so
+ this will have to be done manually.
+
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/firewall-6.html
--- 1,17r4/linuxconf/help.files/sources/inetdconf/firewall-6.html Wed Feb 16 15:13:20 2000
***************
*** 0 ****
--- 1,26 ----
+
+
+
+
+ Internet firewall: Static ip addresses
+
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
The stop options removes all firewall rules (but still enables
+ masquerading).
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/firewall.help
--- 1,17r4/linuxconf/help.files/sources/inetdconf/firewall.help Wed Feb 16 15:13:17 2000
***************
*** 0 ****
--- 1,132 ----
+ Internet firewall
+ Introduction
+
+
+ The moment a computer is attached to the internet it is possible for
+ any number of users on the net to make connections to it. Not everyone
+ has good intentions. This simple internet firewall is meant for those
+ wanting contact to the internet but have an uncomplicated set of ser-
+ vices to offer to others. I would imagine this covers more than 90% of
+ all internet servers.
+
+ 11.. PPrriinncciipplleess
+
+ _L_i_n_u_x offers a standard set of services from the box. These include
+ web-server, telnet, ftp etc. These are normally enabled as default. It
+ may be hard for beginners to determine what these services offer and
+ why they should be inaccessible from the internet.
+
+ This firewall first determines which these services are by looking at
+ listening services. This list is presented with a button to click if
+ the service is to be accessible from the internet.
+
+ If the computer offer no services to the internet it may still be a
+ good idea to at least enable one service. That is 113/auth as this
+ will enable _o_t_h_e_r systems to determine who _y_o_u are when you make
+ connections to _t_h_e_m.
+
+
+ 22.. IInnppuutt ddeennyy
+
+ All input to the internet interface will at first be denied. Ports
+ which are enabled will then be opened and last all ports above 1024
+ will be opened (these ports will be used for local access toward
+ internet).
+
+ Any new service which is started in the computer later on will be
+ inaccessible from the internet until the corresponding port is opened.
+
+
+ 33.. MMaassqquueerraaddiinngg
+
+ This firewall assumes (for now) that you have a local network with
+ access to the internet. So masquerading is done. This is a technique
+ which enables any computer on the local network to access the internet
+ without letting anyone know you have more than one computer.
+
+
+ 44.. FFoorrwwaarrddiinngg
+
+ This firewall also assumes (for now) that forwarding should be enabled
+ in _L_i_n_u_x. Otherwise no host on the local network will be able to
+ reach the internet.
+
+
+ 55.. DDyynnaammiicc iipp aaddddrreesssseess
+
+ Dial up connections usually result in different ip addresses for each
+ connection. So there is no way to determine once and for all what
+ address you will get once connected to the internet. In this case the
+ firewall must be activated the moment the connection is made and the
+ address is known. The script /etc/ppp/ip-up (and /etc/ppp/ip-up.local
+ for RedHat) knows the address and will be able to start the firewall.
+
+ Firewall activation is not inserted in this script (at the moment) so
+ this will have to be done manually.
+
+ 66.. SSttaattiicc iipp aaddddrreesssseess
+
+ If a static ip address can be used (as will be the case of a direct
+ connection) the firewall can be started at boot time through a rc-
+ script.
+
+
+ 77.. TThhee eexxeeccuuttaabbllee ssccrriipptt
+
+ This firewall results in an executable script which can run either for
+ a static address or a dynamic address. Usage:
+
+ /usr/lib/linuxconf/lib/inetdconfFW.sh start interface ip-address
+
+ or
+
+ /usr/lib/linuxconf/lib/inetdconfFW.sh stop
+
+ The stop options removes all firewall rules (but still enables
+ masquerading).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/firewall.html
--- 1,17r4/linuxconf/help.files/sources/inetdconf/firewall.html Wed Feb 16 15:13:21 2000
***************
*** 0 ****
--- 1,52 ----
+
+
+
+
+ Internet firewall
+
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
Internet firewall
+
+
Introduction
+
+ The moment a computer is attached to the internet it is possible for any
+ number of users on the net to make connections to it. Not everyone
+ has good intentions. This simple internet firewall is meant for those
+ wanting contact to the internet but have an uncomplicated set of
+ services to offer to others. I would imagine this covers more than
+ 90% of all internet servers.
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/firewall.sgml
--- 1,17r4/linuxconf/help.files/sources/inetdconf/firewall.sgml Wed Feb 16 15:13:07 2000
***************
*** 0 ****
--- 1,86 ----
+
+
+ Internet firewall
+ Introduction
+
+ The moment a computer is attached to the internet it is possible for any
+ number of users on the net to make connections to it. Not everyone
+ has good intentions. This simple internet firewall is meant for those
+ wanting contact to the internet but have an uncomplicated set of
+ services to offer to others. I would imagine this covers more than
+ 90% of all internet servers.
+
+
+ Principles
+
+
+ This firewall first determines which these services are by looking at
+ listening services. This list is presented with a button to click
+ if the service is to be accessible from the internet.
+
+ If the computer offer no services to the internet it may still be a
+ good idea to at least enable one service. That is 113/auth as this
+ will enable Input deny
+
+ All input to the internet interface will at first be denied. Ports which
+ are enabled will then be opened and last all ports above 1024 will be
+ opened (these ports will be used for local access toward internet).
+
+ Any new service which is started in the computer later on will be
+ inaccessible from the internet until the corresponding port is opened.
+
+ Masquerading
+
+ This firewall assumes (for now) that you have a local network
+ with access to the internet. So masquerading
+ is done. This is a technique which enables any computer on the local
+ network to access the internet without letting anyone know you have
+ more than one computer.
+
+ Forwarding
+
+ This firewall also assumes (for now) that forwarding should be enabled in
+ Dynamic ip addresses
+
+ Dial up connections usually result in different ip addresses for each
+ connection. So there is no way to determine once and for all what address
+ you will get once connected to the internet. In this case the firewall
+ must be activated the moment the connection is made and the address is
+ known. The script /etc/ppp/ip-up (and /etc/ppp/ip-up.local for RedHat)
+ knows the address and will be able to start the firewall.
+
+ Firewall activation is not inserted in this script (at the moment) so
+ this will have to be done manually.
+
+
+ Static ip addresses
+
+ If a static ip address can be used (as will be the case of a direct
+ connection) the firewall can be started at boot time through
+ a rc-script.
+
+ The executable script
+
+ This firewall results in an executable script which can run either for
+ a static address or a dynamic address. Usage:
+
The name of the server is specified. It is possible to enter several
+ servers. But only servers in the list are acceptable. These servers
+ are started by tcpd through inetd.
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/hostsallow-2.html
--- 1,17r4/linuxconf/help.files/sources/inetdconf/hostsallow-2.html Wed Feb 16 14:21:57 2000
***************
*** 0 ****
--- 1,25 ----
+
+
+
+
+ Hosts allow and deny: Client systems
+
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
Any command can be executed when the filter is applied.
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/hostsallow.help
--- 1,17r4/linuxconf/help.files/sources/inetdconf/hostsallow.help Wed Feb 16 14:21:53 2000
***************
*** 0 ****
--- 1,66 ----
+ Hosts allow and deny
+ Introduction
+
+
+ This is the last line of defence against unwanted visitors for ser-
+ vices which are started by tcpd through inetd. This is where it is
+ possible to allow or deny connections based on the source of the
+ requests.
+
+ 11.. SSeerrvveerr
+
+ The name of the server is specified. It is possible to enter several
+ servers. But only servers in the list are acceptable. These servers
+ are started by tcpd through inetd.
+
+
+ 22.. CClliieenntt ssyysstteemmss
+
+ Enter the names of clients which are allowed or denied. It is possible
+ to enter several clients or enter the keywoard _A_L_L.
+
+
+ 33.. OOppttiioonnaall ccoommmmaanndd
+
+ Any command can be executed when the filter is applied.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/hostsallow.html
--- 1,17r4/linuxconf/help.files/sources/inetdconf/hostsallow.html Wed Feb 16 14:21:57 2000
***************
*** 0 ****
--- 1,37 ----
+
+
+
+
+ Hosts allow and deny
+
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
Hosts allow and deny
+
+
Introduction
+
+ This is the last line of defence against unwanted visitors for services
+ which are started by tcpd through inetd. This is where it is possible
+ to allow or deny connections based on the source of the requests.
+
+
+
+
+ Next
+ Previous
+ Contents
+
+
*** 1.17r3/linuxconf/help.files/sources/inetdconf/hostsallow.sgml
--- 1,17r4/linuxconf/help.files/sources/inetdconf/hostsallow.sgml Wed Feb 16 14:21:23 2000
***************
*** 0 ****
--- 1,26 ----
+
+
+ Hosts allow and deny
+ Introduction
+
+ This is the last line of defence against unwanted visitors for services
+ which are started by tcpd through inetd. This is where it is possible
+ to allow or deny connections based on the source of the requests.
+
+
+ Server
+
+ The name of the server is specified. It is possible to enter several
+ servers. But only servers in the list are acceptable. These servers
+ are started by tcpd through inetd.
+
+ Client systems
+
+ Enter the names of clients which are allowed or denied. It is possible to
+ enter several clients or enter the keywoard Optional command
+
+ Any command can be executed when the filter is applied.
+
+
*** 1.17r3/linuxconf/images/modemconf.xpm Sun Dec 12 22:07:40 1999
--- 1,17r4/linuxconf/images/modemconf.xpm Wed Feb 16 23:48:27 2000
***************
*** 55,59 ****
"..................................................",
"..................................................",
"..................................................",
! ".................................................."
! };
--- 55,58 ----
"..................................................",
"..................................................",
"..................................................",
! ".................................................."};
*** 1.17r3/linuxconf/main/linuxconf.cc Fri Feb 4 16:55:00 2000
--- 1,17r4/linuxconf/main/linuxconf.cc Sun Feb 20 14:55:11 2000
***************
*** 344,350 ****
}
}
SSTRING lang;
! char langmode = linuxconf_getlangmode();
dia.newf_chk ("",langmode,MSG_U(I_LANGMODE,"Automatic language selection"));
lang.setfrom (linuxconf_getlangmanual());
comb = dia.newf_list (MSG_U(F_LANGAGE,"Language"),lang);
--- 344,350 ----
}
}
SSTRING lang;
! char langmode = linuxconf_getlangmode() ? 1 : 0;
dia.newf_chk ("",langmode,MSG_U(I_LANGMODE,"Automatic language selection"));
lang.setfrom (linuxconf_getlangmanual());
comb = dia.newf_list (MSG_U(F_LANGAGE,"Language"),lang);
***************
*** 370,378 ****
}
dia.newf_num (MSG_U(F_HTMLTIMEOUT,"Html timeout"),html_timeout);
! char usegui = (char)linuxconf_getguimode();
dia.newf_chk ("",usegui,MSG_U(F_USEGUI,"May use the GUI mode"));
! char usecol = (char)linuxconf_getcolormode();
dia.newf_chk ("",usecol,MSG_U(F_USECOLORS
,"May use the colors in text mode"));
int trig = linuxconf_getprefixtrig();
--- 370,378 ----
}
dia.newf_num (MSG_U(F_HTMLTIMEOUT,"Html timeout"),html_timeout);
! char usegui = linuxconf_getguimode() ? 1 : 0;
dia.newf_chk ("",usegui,MSG_U(F_USEGUI,"May use the GUI mode"));
! char usecol = (char)linuxconf_getcolormode() ? 1 : 0;
dia.newf_chk ("",usecol,MSG_U(F_USECOLORS
,"May use the colors in text mode"));
int trig = linuxconf_getprefixtrig();
***************
*** 415,422 ****
}
linuxconf_setlang (lang.get());
linuxconf_setlangmode (langmode);
! linuxconf_setguimode(usegui);
! linuxconf_setcolormode(usecol);
linuxconf_setprefixtrig(trig);
html_setbodyparm (bodyparm.get());
dialog_setuselynx (uselynx != 0);
--- 415,422 ----
}
linuxconf_setlang (lang.get());
linuxconf_setlangmode (langmode);
! linuxconf_setguimode(usegui != 0);
! linuxconf_setcolormode(usecol != 0);
linuxconf_setprefixtrig(trig);
html_setbodyparm (bodyparm.get());
dialog_setuselynx (uselynx != 0);
*** 1.17r3/linuxconf/main/main.cc Thu Jan 6 00:23:53 2000
--- 1,17r4/linuxconf/main/main.cc Mon Feb 21 11:33:39 2000
***************
*** 382,390 ****
userconf_editupass();
}else if (strcmp(module_key,"userconf")==0){
userconf_main(0,NULL);
- }else if (strncmp(module_key,"vuser-",6)==0){
- const char *tb[]={module_key+6};
- module_sendmessage ("editvdom",1,tb);
}else if (strcmp(module_key,"listspc")==0){
userconf_listspc();
}else{
--- 382,387 ----
*** 1.17r3/linuxconf/messages/se/inetdconf.dic Fri Jan 21 17:20:42 2000
--- 1,17r4/linuxconf/messages/se/inetdconf.dic Wed Feb 16 16:56:16 2000
***************
*** 1,8 ****
@version 3
!E_SERVERPATHINCORRECT
:E Server path incorrect.\nFirst character must be a /\n
! :T Sökväg till server-program fel.\n
! +Måste börja med ett /\n
!I_ETCHOSTSALLOWLIST
:E This is the list of all services which\npresently are allowed in the system.\n
:T Denna lista visar alla tjänster som för närvarande\n
--- 1,199 ----
@version 3
+ !T_USAGE
+ :E Module inetdconf usage\n
+ +\n
+ + --enable service [service ...]\n
+ + --disable service [service ...]\n
+ :T Modul inetdconf kommandoalternativ\n
+ +\n
+ + --enable tjänst [tjänst ...]\n
+ + --disable tjänst [tjänst ...]\n
+ !P_EDITFIREWALL
+ :E change internet firewall
+ :T ändra brandvägg mot internet
+ !I_SCRIPT_CREATED
+ :E Executable script (%s) has been created.\n
+ +This script should be executed when the internet interface %s is brought up.\n
+ +\n
+ +For a dynamic ip address start it by (in %s):\n
+ +%s start $1 $4\n
+ +\n
+ +or for a static ip address in a rc-script:\n
+ +%s start %s %s\n
+ :T Exekverbart skript (%s) har skapats.\n
+ +Detta skript bör startas när %s aktiveras.\n
+ +\n
+ +För en dynamisk ip-adress startas detta genom (i %s):\n
+ +%s start $1 $4\n
+ +\n
+ +eller för en statisk adress i ett rc-skript:\n
+ +%s start %s %s\n
+ !E_IP_DYNADDR
+ :E You want dynamic ip address but this is\nnot active in the kernel\n
+ :T Du vill ha en dynamisk ip-adress, men detta är inte\n
+ +aktiverat i kärnan.\n
+ !E_IP_FORWARD
+ :E Forwarding of ip traffic is not active in\n
+ +the kernel. This is not needed for the\n
+ +firewall but you will not reach the internet\n
+ +from a local network.\n
+ :T Vidarebefordran av ip-trafik är inte aktivt i kärnan.\n
+ +Detta behövs inte för brandväggen, men du kommer inte\n
+ +åt internet från ett lokalt nätverk.\n
+ !F_IP_FORWARD
+ :E Kernel ip forward
+ :T Kärnan vidarebefordrar ip-trafik:
+ !F_YES
+ :E Yes
+ :T Ja
+ !F_NO
+ :E No
+ :T Nej
+ !F_IP_DYNADDR
+ :E Kernel dynamic ip
+ :T Kärnan hanterar dynamiska adresser:
+ !E_NODEFAULT_ROUTE
+ :T Kan inte bestämma rutten till internet!\n
+ +Sökningen baseras på att internet är reservutgången.\n
+ :E Can not determine the route to the internet!\n
+ +The search is based on internet being the default\n
+ +route.\n
+ !F_ACTIVE
+ :E Active
+ :T Aktiv
+ !E_ALLOWSERVICEMISSING
+ :E Server name is missing
+ :T Servernamn saknas
+ !I_INETD
+ :E This menu allows you to configure basic system services\n
+ +based on the internet super server inetd and do a\n
+ +simple firewall against the internet with internal\n
+ +masquerading of the local network.\n
+ +\n
+ +For servers which are started by inetd/tcpd it is also\n
+ +possible to allow or deny servers on a system basis.
+ :T Denna meny låter dig ställa in grundläggande systemtjänster\n
+ +baserade på internet superserver inetd och göra en enkel\n
+ +brandvägg mot internet med maskering av det lokala nätverket.\n
+ !E_NOPORTLIST
+ :E No active services could be located in this system.\n
+ +If this is correct there is no need for a firewall.\n
+ :T Inga aktiva tjänster funna i detta system.\n
+ +Om detta är korrekt, så behövs ingen brandvägg.\n
+ !F_INTERNET_INTERFACE
+ :E Internet interface
+ :T Internet via enhet:
+ !F_INTERNET_IP
+ :E Internet ip address
+ :T IP-address mot internet:
+ # *** new message
+ !T_ACTIVE_SERVICES_TCP
+ :E TCP
+ :T TCP
+ # *** new message
+ !T_FIREWALL
+ :E Input firewall
+ :T Brandvägg för indata
+ !T_ACTIVE_SERVICES_UDP
+ :E UDP
+ :T UDP
+ !I_FIREWALL
+ :E This simple input filter firewall for internet interface blocks every connection unless it is\n
+ +allowed in this dialog. Internal network is masqueraded and icmp is allowed.
+ :T Denna enkla brandvägg med indatafilter mot internet blockerar varje uppkoppling\n
+ +såvida den inte tillåts i denna dialog. Interna nätverk maskeras och icmp tillåts.
+ !F_ENABLE_FIREWALL
+ :E Internet input filter firewall
+ :T Internet brandvägg för indata:
+ !T_IN
+ :E in
+ :T i
+ !T_BY
+ :E by
+ :T av
+ !F_DYNAMIC_IP
+ :E Dynamic ip address
+ :T Dynamisk ip-adress:
+ !T_ALLOWED_SERVICES
+ :E Allowed services from the internet
+ :T Tillåtna tjänster från internet
+ !T_INTERNET
+ :E Internet
+ :T Internet
+ !F_NETWORK_MASK
+ :E Network mask
+ :T Nätverksmask:
+ !F_NETWORK_ADDRESS
+ :E Network address
+ :T Nätverksadress:
+ !F_LOG_DENIED
+ :E Denied packets logged in system log
+ :T Blockerade paket loggas i systemlogg:
+ !M_FIREWALL
+ :E Internet firewall and masquerade
+ :T Internet brandvägg och maskering
+ !T_BASICFWINFO
+ :E Basic information
+ :T Grundinformation
+ !E_OLD_KERNEL
+ :E Sorry, your kernel is too old for this function.\n
+ +Version at least 2.2.0 required\n
+ :T Tyvärr är din kärna för gammal för denna funktion.\n
+ +Version måste vara minst 2.2.0.\n
+ !I_INTERFACE
+ :E Full access to this interface
+ :T Fullständig tillgång denna enhet:
+ !I_ETCHOSTSDENYLIST
+ :E This is a list of all servers which\npresently are denied in the system.\n
+ :T Detta är en lista över samtliga servers\n
+ +som just nu är stoppade i detta system.\n
+ !T_ETCHOSTSDENYLIST
+ :E Denied servers
+ :T Stoppade servers
+ !T_ETCHOSTSDENY
+ :E Denied servers
+ :T Stoppade servers
+ !F_SERVER
+ :E Server
+ :T Server:
+ !F_HOSTSALLOWCLIENT
+ :E Client systems
+ :T Klientsystem:
+ !F_HOSTSALLOWCOMMAND
+ :E Optional command
+ :T Valfritt kommando:
+ !T_HOSTSALLOW
+ :E Allowed servers
+ :T Tillåtna servers
+ !H_HOSTSALLOW
+ :E Service\tClient
+ :T Server\tKlient
+ !I_ADDHOSTSALLOW
+ :E Select [Add] to add a new server\n
+ :T Välj [Addera] för att lägga till en ny server\n
+ !T_HOSTSALLOWLIST
+ :E Allowed servers
+ :T Tillåtna servers
+ !I_HOSTSALLOWLIST
+ :E This is a list of all servers which\npresently are allowed in the system.\n
+ :T Detta är en lista över samtliga servers\n
+ +som just nu är tillåtna i detta system.\n
+ !M_HOSTSALLOW
+ :E Allowed server access
+ :T Tillåten serveranslutning
+ !M_HOSTSDENY
+ :E Denied server access
+ :T Stoppad serveranslutning
+ !E_NOT_UP
+ :E Route to the internet is not valid.\n
+ +Diald is running but the link is not active.\n
+ +Can not determine the route to the internet!\n
+ :T Rutt till internet är inte giltig.\n
+ +Diald är igång men uppkopplingen är inte aktiv.\n
+ +Kan inte bestämma rutten till internet!\n
!E_SERVERPATHINCORRECT
:E Server path incorrect.\nFirst character must be a /\n
! :T Sökväg till server-program fel.\nMåste börja med ett /\n
!I_ETCHOSTSALLOWLIST
:E This is the list of all services which\npresently are allowed in the system.\n
:T Denna lista visar alla tjänster som för närvarande\n
***************
*** 38,46 ****
!I_RUNNING
:E On demand
:T Vid behov
- !F_ACTIVE
- :E Enabled
- :T Tillgänglig
!T_ACTIVE
:E Enabled
:T Tillgänglig
--- 229,234 ----
***************
*** 51,59 ****
:T Detta är listan över alla servers som för närvarande\n
+finns tillgängliga i systemet. Dessa kan vara tillgängliga\n
+eller ej.\n
- !E_ALLOWSERVICEMISSING
- :E Service name is missing
- :T Namn för tjänst saknas
!E_ALLOWCLIENT
:E Client name is missing
:T Klientnamn saknas
--- 239,244 ----
***************
*** 75,94 ****
!M_INETDCONFS_INETD
:E Internet servers database
:T Databas internetservers
- !T_USAGE
- :E linuxconf --modulemain inetdconf usage\n
- +\n
- + inetdconf --enable service [service ...]\n
- + inetdconf --disable service [service ...]\n
- +\n
- +Without arguments the modules main dialog is started.\n
- :T linuxconf --modulemain inetdconf användning\n
- +\n
- +\n
- + inetdconf --enable tjänst [tjänst ...]\n
- + inetdconf --disable tjänst [tjänst ...]\n
- +\n
- +Utan argument startas modulens huvuddialog\n
!F_NO_WAIT
:E Yes (nowait)
:T Ja (nowait)
--- 260,265 ----
***************
*** 169,179 ****
!T_INETD
:E Internet super server
:T Internet superserver
- !I_INETD
- :E This menu allows you to configure basic system services\n
- +based on the internet super server inetd\n
- :T Denna meny låter dig ställa in grundläggande systemtjänster\n
- +baserade på internet superserver inetd\n
!F_SOCKET_TYPE
:E Socket type
:T Sockettyp
--- 340,345 ----
***************
*** 252,254 ****
--- 418,421 ----
!I_ADDETCSERVICE
:E Select [Add] to add a new service.\n
:T Välj [Addera] för att lägga till en ny tjänst.\n
+ !P_EDITHOSTSALLOW
*** 1.17r3/linuxconf/messages/sources/mailconf.dic Thu Jan 6 00:12:46 2000
--- 1,17r4/linuxconf/messages/sources/mailconf.dic Thu Feb 17 00:34:06 2000
***************
*** 531,536 ****
--- 531,537 ----
+ --delvdom domain\n
+ --addvuser domain id name\n
+ --delvuser domain id\n
+ + --generatecf\n
+ --setalias alias value ...\n
+ --setvalias alias vdomain value ...\n
+ --unsetalias alias [value] ...\n
*** 1.17r3/linuxconf/messages/sources/userconf.dic Mon Dec 13 21:53:12 1999
--- 1,17r4/linuxconf/messages/sources/userconf.dic Tue Feb 22 17:22:50 2000
***************
*** 1,4 ****
! @version 14
!E_GROUPEXIST
:E Group already exist\n
!E_GROUPEXISTID
--- 1,4 ----
! @version 15
!E_GROUPEXIST
:E Group already exist\n
!E_GROUPEXISTID
***************
*** 260,267 ****
:E User account creation
!F_WASCHG
:E Last password change
- !T_SHADEF
- :E Account management defaults
!F_STDDURATION
:E Standard account duration
!F_WASISDIS
--- 260,265 ----
***************
*** 281,287 ****
!T_IDENTIFY
:E Change your password
!I_IDENTIFY
! :E Enter you account id and your current password\n
+followed by the new password you want. You must\n
+enter it twice to make sure you have it right
!E_IVLDUPASS
--- 279,285 ----
!T_IDENTIFY
:E Change your password
!I_IDENTIFY
! :E Enter your account id and your current password\n
+followed by the new password you want. You must\n
+enter it twice to make sure you have it right
!E_IVLDUPASS
***************
*** 558,560 ****
--- 556,566 ----
!N_MAXALTGR
:E You have entered %d supplemental groups\n
+The Linux kernel only support 32 by default
+ !I_SHOWSHADOW
+ :E Show the shadow parameters
+ !I_EDITHOME
+ :E May change the HOME directory path
+ !T_SCRIPTS
+ :E Scripts
+ !I_EDITSHELL
+ :E May change the login shell
*** 1.17r3/linuxconf/messages/sources/inetdconf.dic Sun Jan 23 22:24:51 2000
--- 1,17r4/linuxconf/messages/sources/inetdconf.dic Wed Feb 16 22:58:33 2000
***************
*** 1,16 ****
! @version 8
!T_INETD
:E Internet super server
!T_USAGE
! :E linuxconf --modulemain inetdconf usage\n
+\n
! + inetdconf --enable service [service ...]\n
! + inetdconf --disable service [service ...]\n
! +\n
! +Without arguments the modules main dialog is started.\n
!I_INETD
:E This menu allows you to configure basic system services\n
! +based on the internet super server inetd\n
!F_SOCKET_TYPE
:E Socket type
!F_PROTOCOLS
--- 1,19 ----
! @version 16
!T_INETD
:E Internet super server
!T_USAGE
! :E Module inetdconf usage\n
+\n
! + --enable service [service ...]\n
! + --disable service [service ...]\n
!I_INETD
:E This menu allows you to configure basic system services\n
! +based on the internet super server inetd and do a\n
! +simple firewall against the internet with internal\n
! +masquerading of the local network.\n
! +\n
! +For servers which are started by inetd/tcpd it is also\n
! +possible to allow or deny servers on a system basis.
!F_SOCKET_TYPE
:E Socket type
!F_PROTOCOLS
***************
*** 91,120 ****
:E Select [Add] to add a new service.\n
!F_ETCPROTOCOLCOMMENT
:E Protocol description
- !P_EDITETCHOSTSALLOW
- :E change service configuration
- !T_ETCHOSTSALLOW
- :E Access allowed
- !H_ETCHOSTSALLOW
- :E Service\tClient
- !I_ADDETCHOSTSALLOW
- :E Select [Add] to add a new service\n
- !T_ETCHOSTSALLOWLIST
- :E Allowed access
- !I_ETCHOSTSALLOWLIST
- :E This is the list of all services which\npresently are allowed in the system.\n
- !F_ETCHOSTSALLOWSERV
- :E Host services
- !F_ETCHOSTSALLOWCLIENT
- :E Client systems
- !F_ETCHOSTSALLOWCOMMAND
- :E Optional command
- !M_ETCHOSTSALLOW
- :E Allow access
- !M_ETCHOSTSDENY
- :E Deny access
- !F_ADDONESERVICE
- :E Add one service
!F_MAXDEFAULT
:E Default
!E_PORTPROTOCOL
--- 94,99 ----
***************
*** 140,146 ****
!E_NOSERVERPATH
:E Server path missing
!E_ALLOWSERVICEMISSING
! :E Service name is missing
!E_ALLOWCLIENT
:E Client name is missing
!F_DISABLED
--- 119,125 ----
!E_NOSERVERPATH
:E Server path missing
!E_ALLOWSERVICEMISSING
! :E Server name is missing
!E_ALLOWCLIENT
:E Client name is missing
!F_DISABLED
***************
*** 153,155 ****
--- 132,239 ----
:E Server path incorrect.\nFirst character must be a /\n
!F_ETCSERVICECOMMENT
:E Comment
+ !E_NODEFAULT_ROUTE
+ :E Can not determine the route to the internet!\n
+ +The search is based on internet being the default\n
+ +route.\n
+ !E_NOPORTLIST
+ :E No active services could be located in this system.\n
+ +If this is correct there is no need for a firewall.\n
+ !F_INTERNET_INTERFACE
+ :E Internet interface
+ !F_INTERNET_IP
+ :E Internet ip address
+ !T_ACTIVE_SERVICES_TCP
+ :E TCP
+ !T_FIREWALL
+ :E Input firewall
+ !T_ACTIVE_SERVICES_UDP
+ :E UDP
+ !I_FIREWALL
+ :E This simple input filter firewall for internet interface blocks every connection unless it is\n
+ +allowed in this dialog. Internal network is masqueraded and icmp is allowed.
+ !F_ENABLE_FIREWALL
+ :E Internet input filter firewall
+ !T_IN
+ :E in
+ !T_BY
+ :E by
+ !F_DYNAMIC_IP
+ :E Dynamic ip address
+ !T_ALLOWED_SERVICES
+ :E Allowed services from the internet
+ !T_INTERNET
+ :E Internet
+ !F_NETWORK_MASK
+ :E Network mask
+ !F_NETWORK_ADDRESS
+ :E Network address
+ !P_EDITFIREWALL
+ :E change internet firewall
+ !F_LOG_DENIED
+ :E Denied packets logged in system log
+ !F_ACTIVE
+ :E Active
+ !M_FIREWALL
+ :E Internet firewall and masquerade
+ !T_BASICFWINFO
+ :E Basic information
+ !E_OLD_KERNEL
+ :E Sorry, your kernel is too old for this function.\n
+ +Version at least 2.2.0 required\n
+ !I_INTERFACE
+ :E Full access to this interface
+ !I_ETCHOSTSDENYLIST
+ :E This is a list of all servers which\npresently are denied in the system.\n
+ !T_ETCHOSTSDENYLIST
+ :E Denied servers
+ !T_ETCHOSTSDENY
+ :E Denied servers
+ !F_SERVER
+ :E Server
+ !F_HOSTSALLOWCLIENT
+ :E Client systems
+ !F_HOSTSALLOWCOMMAND
+ :E Optional command
+ !T_HOSTSALLOW
+ :E Allowed servers
+ !H_HOSTSALLOW
+ :E Service\tClient
+ !I_ADDHOSTSALLOW
+ :E Select [Add] to add a new server\n
+ !T_HOSTSALLOWLIST
+ :E Allowed servers
+ !I_HOSTSALLOWLIST
+ :E This is a list of all servers which\npresently are allowed in the system.\n
+ !M_HOSTSALLOW
+ :E Allowed server access
+ !M_HOSTSDENY
+ :E Denied server access
+ !E_NOT_UP
+ :E Route to the internet is not valid.\n
+ +Diald is running but the link is not active.\n
+ +Can not determine the route to the internet!\n
+ !I_SCRIPT_CREATED
+ :E Executable script (%s) has been created.\n
+ +This script should be executed when the internet interface %s is brought up.\n
+ +\n
+ +For a dynamic ip address start it by (in %s):\n
+ +%s start $1 $4\n
+ +\n
+ +or for a static ip address in a rc-script:\n
+ +%s start %s %s\n
+ !E_IP_DYNADDR
+ :E You want dynamic ip address but this is\nnot active in the kernel\n
+ !E_IP_FORWARD
+ :E Forwarding of ip traffic is not active in\n
+ +the kernel. This is not needed for the\n
+ +firewall but you will not reach the internet\n
+ +from a local network.\n
+ !F_IP_FORWARD
+ :E Kernel ip forward
+ !F_YES
+ :E Yes
+ !F_NO
+ :E No
+ !F_IP_DYNADDR
+ :E Kernel dynamic ip
*** 1.17r3/linuxconf/misc/confdb.cc Sun Dec 12 22:09:11 1999
--- 1,17r4/linuxconf/misc/confdb.cc Sun Feb 20 14:59:46 2000
***************
*** 484,489 ****
--- 484,499 ----
sprintf (buf,"%d",val);
add (prefix,key,buf);
}
+ /*
+ Add one record to the configuration file
+ */
+ PUBLIC void CONFDB::add (
+ const char *prefix,
+ const char *key,
+ bool val)
+ {
+ add (prefix,key,val ? 1 : 0);
+ }
/*
Replace one record in the configuration file
***************
*** 519,524 ****
--- 529,541 ----
char buf[20];
sprintf (buf,"%d",val);
replace (prefix,key,buf);
+ }
+ /*
+ Replace one record in the configuration file
+ */
+ PUBLIC void CONFDB::replace (const char *prefix, const char *key, bool val)
+ {
+ replace (prefix,key,val ? 1 : 0);
}
/*
Replace one record in the configuration file
*** 1.17r3/linuxconf/misc/confdb.h Sun Dec 12 22:09:11 1999
--- 1,17r4/linuxconf/misc/confdb.h Sun Feb 20 14:59:49 2000
***************
*** 34,39 ****
--- 34,42 ----
CONFDB (void);
void add (const char *prefix,
const char *key,
+ bool val);
+ void add (const char *prefix,
+ const char *key,
const SSTRING&val);
virtual void add (const char *prefix,
const char *key,
***************
*** 83,88 ****
--- 86,94 ----
private:
void removeallk (const char *key);
public:
+ void replace (const char *prefix,
+ const char *key,
+ bool val);
void replace (const char *prefix,
const char *key,
char val);
*** 1.17r3/linuxconf/misc/linuxconf.cc Sun Dec 12 22:12:47 1999
--- 1,17r4/linuxconf/misc/linuxconf.cc Sun Feb 20 15:52:28 2000
***************
*** 317,322 ****
--- 317,330 ----
/*
Replace one record in the configuration file
*/
+ void linuxconf_replace (const char *prefix, const char *key, bool val)
+ {
+ linuxconf_init();
+ ui_context.tb->replace (prefix,key,val);
+ }
+ /*
+ Replace one record in the configuration file
+ */
void linuxconf_replace (const char *prefix, const char *key, long val)
{
linuxconf_init();
***************
*** 350,356 ****
const char *linuxconf_getdistdir()
{
const char *ret = linuxconf_getval ("LINUXCONF","distribution");
! if (ret == NULL) ret = "std";
return ret;
}
--- 358,384 ----
const char *linuxconf_getdistdir()
{
const char *ret = linuxconf_getval ("LINUXCONF","distribution");
! if (ret == NULL){
! static bool done = false;
! if (!done && geteuid()==0){
! done = true;
! fprintf (stderr,
! "\n"
! "**** /etc/conf.linuxconf is incomplete.\n"
! " It must hold a line identifying the linux distribution.\n"
! " This probably means that Linuxconf was not properly installed\n"
! " or that somebody cleared /etc/conf.linuxconf.\n"
! "\n"
! " Linuxconf will behave badly unless this is fixed.\n"
! "\n"
! " A line like this must be written in /etc/conf.linuxconf:\n"
! "\n"
! " LINUXCONF.distribution redhat\n"
! );
! sleep (4);
! }
! ret = "std";
! }
return ret;
}
***************
*** 489,502 ****
/*
Get the selection mode for the language (manual = 0, automatic = 1)
*/
! int linuxconf_getlangmode()
{
! return linuxconf_getvalnum (K_LINUXCONF,K_LANGMODE,1);
}
/*
Record the selection mode for the language
*/
! void linuxconf_setlangmode (int mode)
{
if (mode){
linuxconf_removeall (K_LINUXCONF,K_LANGMODE);
--- 517,530 ----
/*
Get the selection mode for the language (manual = 0, automatic = 1)
*/
! bool linuxconf_getlangmode()
{
! return linuxconf_getvalnum (K_LINUXCONF,K_LANGMODE,1) != 0;
}
/*
Record the selection mode for the language
*/
! void linuxconf_setlangmode (bool mode)
{
if (mode){
linuxconf_removeall (K_LINUXCONF,K_LANGMODE);
***************
*** 509,519 ****
Find out if the GUI mode is allowed by the user.
It will be turned off on some slow machine.
*/
! int linuxconf_getguimode()
{
! return linuxconf_getvalnum (K_LINUXCONF,K_GUIMODE,1);
}
! void linuxconf_setguimode (int mode)
{
if (mode){
linuxconf_removeall (K_LINUXCONF,K_GUIMODE);
--- 537,547 ----
Find out if the GUI mode is allowed by the user.
It will be turned off on some slow machine.
*/
! bool linuxconf_getguimode()
{
! return linuxconf_getvalnum (K_LINUXCONF,K_GUIMODE,1) != 0;
}
! void linuxconf_setguimode (bool mode)
{
if (mode){
linuxconf_removeall (K_LINUXCONF,K_GUIMODE);
***************
*** 524,534 ****
/*
Find out if linuxconf is allowed to use color in text mode
*/
! int linuxconf_getcolormode()
{
return linuxconf_getvalnum (K_LINUXCONF,K_COLORMODE,1);
}
! void linuxconf_setcolormode (int mode)
{
if (mode){
linuxconf_removeall (K_LINUXCONF,K_COLORMODE);
--- 552,562 ----
/*
Find out if linuxconf is allowed to use color in text mode
*/
! bool linuxconf_getcolormode()
{
return linuxconf_getvalnum (K_LINUXCONF,K_COLORMODE,1);
}
! void linuxconf_setcolormode (bool mode)
{
if (mode){
linuxconf_removeall (K_LINUXCONF,K_COLORMODE);
***************
*** 536,542 ****
--- 564,576 ----
linuxconf_replace (K_LINUXCONF,K_COLORMODE,mode);
}
}
+ /*
+ Get the threshold value to enable the filtering for long list.
+ When a record list is longer than this threshold, a popup lets the
+ user enter a search prefix.
+ The default is 60 entries.
+ */
int linuxconf_getprefixtrig()
{
return linuxconf_getvalnum (K_LINUXCONF,K_PREFIXTRIG,60);
*** 1.17r3/linuxconf/misc/misc.p Thu Jan 6 23:23:30 2000
--- 1,17r4/linuxconf/misc/misc.p Sun Feb 20 14:59:49 2000
***************
*** 1,9 ****
- /* _dict.cc 14/08/1996 14.39.06 */
/* array.cc 29/12/1999 23.53.22 */
/* arraykey.cc 12/12/1999 22.30.32 */
void arraykey_required (void);
! /* confdb.cc 12/12/1999 22.09.10 */
! /* configf.cc 12/12/1999 22.30.32 */
void configf_required (void);
void configf_forgetpath (void);
void configf_readlookup (void);
--- 1,8 ----
/* array.cc 29/12/1999 23.53.22 */
/* arraykey.cc 12/12/1999 22.30.32 */
void arraykey_required (void);
! /* confdb.cc 20/02/2000 14.59.46 */
! /* configf.cc 28/01/2000 10.57.40 */
void configf_required (void);
void configf_forgetpath (void);
void configf_readlookup (void);
***************
*** 46,51 ****
--- 45,51 ----
const char *group,
int perm);
bool context_fexist (const char *path);
+ /* _dict.cc 14/08/1996 14.39.06 */
/* dictionary.cc 10/01/1999 21.43.42 */
/* dir.cc 02/10/1998 01.20.08 */
int dir_getlist (const char *path, SSTRINGS&lst);
***************
*** 55,60 ****
--- 55,68 ----
void error_setmode (bool batch);
void xconf_error (const char *msg, ...);
void xconf_notice (const char *msg, ...);
+ /* fgets1.cc 13/12/1996 23.39.36 */
+ char *fgets_strip (char *buf,
+ int sizebuf,
+ FILE *fin,
+ char contcar,
+ char comcar,
+ int *noline,
+ int *empty);
/* fgets.cc 20/07/1998 22.57.24 */
char *fgets_strip (char *buf,
int sizebuf,
***************
*** 75,88 ****
SSTRING&comments);
void comment_write (const SSTRING&str, FILE *fout, char comchar);
void comment_write (const SSTRING&str, FILE *fout);
- /* fgets1.cc 13/12/1996 23.39.36 */
- char *fgets_strip (char *buf,
- int sizebuf,
- FILE *fin,
- char contcar,
- char comcar,
- int *noline,
- int *empty);
/* file.cc 07/06/1999 19.06.18 */
int file_mkdir (const char *dir,
int uid,
--- 83,88 ----
***************
*** 105,117 ****
int gid,
int mode);
int file_followlink (const char *fpath, char *realpath);
- /* fopen.cc 22/12/1997 00.37.36 */
- FILE *xconf_fopen (const char *fname, const char *mode);
/* fopen1.cc 30/07/1998 02.03.12 */
void xconf_fopencfg_bypass (bool _bypass);
FILE *xconf_fopencfg (PRIVILEGE *priv,
const char *fname,
const char *mode);
/* fviews.cc 02/02/1999 23.33.28 */
void fviews_required (void);
/* helpf.cc 18/08/1998 13.56.58 */
--- 105,117 ----
int gid,
int mode);
int file_followlink (const char *fpath, char *realpath);
/* fopen1.cc 30/07/1998 02.03.12 */
void xconf_fopencfg_bypass (bool _bypass);
FILE *xconf_fopencfg (PRIVILEGE *priv,
const char *fname,
const char *mode);
+ /* fopen.cc 22/12/1997 00.37.36 */
+ FILE *xconf_fopen (const char *fname, const char *mode);
/* fviews.cc 02/02/1999 23.33.28 */
void fviews_required (void);
/* helpf.cc 18/08/1998 13.56.58 */
***************
*** 128,134 ****
bool ipnum_validip (const char *aip, bool ishost);
bool ipnum_validip (const char *aip, const char *netmask, bool ishost);
/* ipstuff.cc 07/04/1999 02.43.14 */
! /* linuxconf.cc 12/12/1999 22.12.46 */
void linuxconf_sethook (CONFDB * (*fct)(CONFDB *));
CONFDB *linuxconf_getdb (void);
const char *linuxconf_getval (const char *prefix, const char *key);
--- 128,134 ----
bool ipnum_validip (const char *aip, bool ishost);
bool ipnum_validip (const char *aip, const char *netmask, bool ishost);
/* ipstuff.cc 07/04/1999 02.43.14 */
! /* linuxconf.cc 20/02/2000 14.57.48 */
void linuxconf_sethook (CONFDB * (*fct)(CONFDB *));
CONFDB *linuxconf_getdb (void);
const char *linuxconf_getval (const char *prefix, const char *key);
***************
*** 162,167 ****
--- 162,168 ----
const char *val);
void linuxconf_replace (const char *prefix, const char *key, char val);
void linuxconf_replace (const char *prefix, const char *key, int val);
+ void linuxconf_replace (const char *prefix, const char *key, bool val);
void linuxconf_replace (const char *prefix, const char *key, long val);
void linuxconf_replace (const char *prefix,
const char *key,
***************
*** 175,186 ****
const char *linuxconf_getlangmanual (void);
const char *linuxconf_getlang (void);
void linuxconf_setlang (const char *lang);
! int linuxconf_getlangmode (void);
! void linuxconf_setlangmode (int mode);
! int linuxconf_getguimode (void);
! void linuxconf_setguimode (int mode);
! int linuxconf_getcolormode (void);
! void linuxconf_setcolormode (int mode);
int linuxconf_getprefixtrig (void);
void linuxconf_setprefixtrig (int trig);
void linuxconf_loadmsg (const char *prefix, const char *rev);
--- 176,187 ----
const char *linuxconf_getlangmanual (void);
const char *linuxconf_getlang (void);
void linuxconf_setlang (const char *lang);
! bool linuxconf_getlangmode (void);
! void linuxconf_setlangmode (bool mode);
! bool linuxconf_getguimode (void);
! void linuxconf_setguimode (bool mode);
! bool linuxconf_getcolormode (void);
! void linuxconf_setcolormode (bool mode);
int linuxconf_getprefixtrig (void);
void linuxconf_setprefixtrig (int trig);
void linuxconf_loadmsg (const char *prefix, const char *rev);
***************
*** 194,199 ****
--- 195,220 ----
char *strdup_err (const char *str);
/* misc.cc 12/12/1999 22.25.52 */
void misc_required (void);
+ /* module_api.cc 13/12/1999 21.53.12 */
+ void module_api_required (void);
+ void module_register_api (const char *apiname,
+ int version,
+ void * (*fctget)(),
+ void (*fctrelease)(void *));
+ int module_get_apis (const char *apiname,
+ int version,
+ const char *client,
+ void *tbapi[MAX_API_PROVIDERS]);
+ void module_release_apis (const char *apiname,
+ void *tbapi[],
+ int nbapi);
+ void *module_get_api (const char *apiname,
+ int version,
+ const char *client);
+ void module_release_api (const char *apiname, void *api);
+ bool module_api_available (const char *apiname,
+ int version,
+ const char *client);
/* module.cc 12/12/1999 22.23.12 */
void module_setmenu (DIALOG&dia, MENU_CONTEXT context);
void module_setmenu (DIALOG&dia, const char *menuid);
***************
*** 216,259 ****
void module_loaddistmod (void);
void module_setone (const char *path);
void module_unsetone (const char *path);
! /* module_api.cc 13/12/1999 21.53.12 */
! void module_api_required (void);
! void module_register_api (const char *apiname,
! int version,
! void * (*fctget)(),
! void (*fctrelease)(void *));
! int module_get_apis (const char *apiname,
! int version,
! const char *client,
! void *tbapi[MAX_API_PROVIDERS]);
! void module_release_apis (const char *apiname,
! void *tbapi[],
! int nbapi);
! void *module_get_api (const char *apiname,
! int version,
! const char *client);
! void module_release_api (const char *apiname, void *api);
! bool module_api_available (const char *apiname,
! int version,
! const char *client);
! /* popen.cc 06/01/2000 23.23.20 */
void popen_initsignal (void);
int popen_getloginuid (void);
/* sstream.cc 08/12/1998 01.32.18 */
/* sstring.cc 12/12/1999 22.07.40 */
/* sstrings.cc 11/09/1998 17.11.26 */
- /* str.cc 28/07/1998 14.20.02 */
- char *str_copyword (char *dest, const char *str);
- char *str_copyword (char *dest, const char *str, int size);
- int str_isword (const char *str, const char *word);
- void strcpy_cut (char *dst, const char *src, int size);
- char *str_skipword (const char *str);
- char *str_copyword (SSTRING&dest, const char *str);
- void tbstr_free (char *tb[], int nb);
- int stricmp (const char *str1, const char *str2);
- void strupr (char *str);
- const char *str_extract (const char *buf, SSTRING&s);
- int str_splitline (const char *line, char delim, SSTRINGS&words);
/* str1.cc 12/11/1997 02.59.48 */
int str_strip (const char *str, char *newstr);
char *strip_end (char *str);
--- 237,248 ----
void module_loaddistmod (void);
void module_setone (const char *path);
void module_unsetone (const char *path);
! /* popen.cc 25/01/2000 10.49.24 */
void popen_initsignal (void);
int popen_getloginuid (void);
/* sstream.cc 08/12/1998 01.32.18 */
/* sstring.cc 12/12/1999 22.07.40 */
/* sstrings.cc 11/09/1998 17.11.26 */
/* str1.cc 12/11/1997 02.59.48 */
int str_strip (const char *str, char *newstr);
char *strip_end (char *str);
***************
*** 274,280 ****
/* str6.cc 29/11/1997 13.38.50 */
void str6_required (void);
int str_exptab (const char *src, int step, char *dst);
! /* stub.cc 13/12/1999 21.53.12 */
void html_access_log (int , const char *);
int html_access_check (int);
void perm_setaccess (const char *, const char *);
--- 263,281 ----
/* str6.cc 29/11/1997 13.38.50 */
void str6_required (void);
int str_exptab (const char *src, int step, char *dst);
! /* str.cc 28/07/1998 14.20.02 */
! char *str_copyword (char *dest, const char *str);
! char *str_copyword (char *dest, const char *str, int size);
! int str_isword (const char *str, const char *word);
! void strcpy_cut (char *dst, const char *src, int size);
! char *str_skipword (const char *str);
! char *str_copyword (SSTRING&dest, const char *str);
! void tbstr_free (char *tb[], int nb);
! int stricmp (const char *str1, const char *str2);
! void strupr (char *str);
! const char *str_extract (const char *buf, SSTRING&s);
! int str_splitline (const char *line, char delim, SSTRINGS&words);
! /* stub.cc 24/01/2000 15.52.46 */
void html_access_log (int , const char *);
int html_access_check (int);
void perm_setaccess (const char *, const char *);
***************
*** 297,303 ****
const char *daemon_findpath (char const *command);
void button_text2png (const char *, FILE *);
void module_setmenu (class DIALOG&, MENU_CONTEXT);
! /* subsys.cc 12/12/1999 22.10.50 */
int subsys_getallsubsys (SSTRINGS&tb);
int subsys_getallsubsys (SSTRINGS&tb, SSTRINGS&titles);
const char *confver_getcur (void);
--- 298,304 ----
const char *daemon_findpath (char const *command);
void button_text2png (const char *, FILE *);
void module_setmenu (class DIALOG&, MENU_CONTEXT);
! /* subsys.cc 28/01/2000 10.42.00 */
int subsys_getallsubsys (SSTRINGS&tb);
int subsys_getallsubsys (SSTRINGS&tb, SSTRINGS&titles);
const char *confver_getcur (void);
*** 1.17r3/linuxconf/misc/misc.pm Thu Jan 6 23:23:30 2000
--- 1,17r4/linuxconf/misc/misc.pm Sun Feb 20 14:59:49 2000
***************
*** 1,4 ****
- /* _dict.cc 14/08/1996 14.39.06 */
/* array.cc 29/12/1999 23.53.22 */
PUBLIC ARRAY_OBJ::ARRAY_OBJ (void);
PUBLIC VIRTUAL ARRAY_OBJ::~ARRAY_OBJ (void);
--- 1,3 ----
***************
*** 51,57 ****
PUBLIC SSTRING_KEY *SSTRING_KEYS::getitem (int no)const;
PUBLIC SSTRING_KEY *SSTRING_KEYS::getobj (const char *key)const;
PUBLIC const char *SSTRING_KEYS::getval (const char *key)const;
! /* confdb.cc 12/12/1999 22.09.10 */
PUBLIC CONFOBJ::CONFOBJ (const char *_sys,
const char *_key,
const char *_val);
--- 50,56 ----
PUBLIC SSTRING_KEY *SSTRING_KEYS::getitem (int no)const;
PUBLIC SSTRING_KEY *SSTRING_KEYS::getobj (const char *key)const;
PUBLIC const char *SSTRING_KEYS::getval (const char *key)const;
! /* confdb.cc 20/02/2000 14.59.46 */
PUBLIC CONFOBJ::CONFOBJ (const char *_sys,
const char *_key,
const char *_val);
***************
*** 104,109 ****
--- 103,111 ----
PUBLIC void CONFDB::add (const char *prefix,
const char *key,
int val);
+ PUBLIC void CONFDB::add (const char *prefix,
+ const char *key,
+ bool val);
PUBLIC void CONFDB::replacek (const char *key, const char *val);
PUBLIC void CONFDB::replace (const char *prefix,
const char *key,
***************
*** 116,121 ****
--- 118,126 ----
int val);
PUBLIC void CONFDB::replace (const char *prefix,
const char *key,
+ bool val);
+ PUBLIC void CONFDB::replace (const char *prefix,
+ const char *key,
long val);
PUBLIC void CONFDB::replace (const char *prefix,
const char *key,
***************
*** 130,136 ****
PRIVATE void CONFDB::delsys (const char *_sys);
PUBLIC VIRTUAL int CONFDB::extract (SSTREAM&ss, const char *_sys);
PUBLIC void CONFDB::patchsys (void);
! /* configf.cc 12/12/1999 22.30.32 */
PUBLIC CONFIG_FILE_LISTER::CONFIG_FILE_LISTER (void (*f)());
PUBLIC CONFIG_FILE_INTERNAL::CONFIG_FILE_INTERNAL (HELP_FILE&_helpfile,
const char *_path,
--- 135,141 ----
PRIVATE void CONFDB::delsys (const char *_sys);
PUBLIC VIRTUAL int CONFDB::extract (SSTREAM&ss, const char *_sys);
PUBLIC void CONFDB::patchsys (void);
! /* configf.cc 28/01/2000 10.57.40 */
PUBLIC CONFIG_FILE_LISTER::CONFIG_FILE_LISTER (void (*f)());
PUBLIC CONFIG_FILE_INTERNAL::CONFIG_FILE_INTERNAL (HELP_FILE&_helpfile,
const char *_path,
***************
*** 214,219 ****
--- 219,225 ----
PUBLIC LINUXCONF_CONTEXT::LINUXCONF_CONTEXT (void);
PUBLIC void LINUXCONF_CONTEXT::set (LINUXCONF_CONTEXT&cur);
PUBLIC void LINUXCONF_CONTEXT::settitle (const char *title);
+ /* _dict.cc 14/08/1996 14.39.06 */
/* dictionary.cc 10/01/1999 21.43.42 */
PUBLIC DICTIONARY::DICTIONARY (void);
PRIVATE void DICTIONARY::set_type (const char prefix,
***************
*** 233,243 ****
PUBLIC const char *DICTIONARY::get_val (int no)const;
/* dir.cc 02/10/1998 01.20.08 */
/* error.cc 02/02/1999 18.13.16 */
- /* fgets.cc 20/07/1998 22.57.24 */
/* fgets1.cc 13/12/1996 23.39.36 */
/* file.cc 07/06/1999 19.06.18 */
- /* fopen.cc 22/12/1997 00.37.36 */
/* fopen1.cc 30/07/1998 02.03.12 */
/* fviews.cc 02/02/1999 23.33.28 */
PUBLIC VIEWITEM::VIEWITEM (const SSTRING&_comment,
const char *_line,
--- 239,249 ----
PUBLIC const char *DICTIONARY::get_val (int no)const;
/* dir.cc 02/10/1998 01.20.08 */
/* error.cc 02/02/1999 18.13.16 */
/* fgets1.cc 13/12/1996 23.39.36 */
+ /* fgets.cc 20/07/1998 22.57.24 */
/* file.cc 07/06/1999 19.06.18 */
/* fopen1.cc 30/07/1998 02.03.12 */
+ /* fopen.cc 22/12/1997 00.37.36 */
/* fviews.cc 02/02/1999 23.33.28 */
PUBLIC VIEWITEM::VIEWITEM (const SSTRING&_comment,
const char *_line,
***************
*** 303,309 ****
PUBLIC int IPMAP::next (void);
PUBLIC const char *IPMAP::getcur (void);
PUBLIC void IPMAP::setuse (const IP_ADDR *adr);
! /* linuxconf.cc 12/12/1999 22.12.46 */
PUBLIC CONFIG_FILE_LINUXCONF::CONFIG_FILE_LINUXCONF (const char *_path,
const char *_subsys);
PUBLIC int CONFIG_FILE_LINUXCONF::archive (SSTREAM&ss)const;
--- 309,315 ----
PUBLIC int IPMAP::next (void);
PUBLIC const char *IPMAP::getcur (void);
PUBLIC void IPMAP::setuse (const IP_ADDR *adr);
! /* linuxconf.cc 20/02/2000 14.57.48 */
PUBLIC CONFIG_FILE_LINUXCONF::CONFIG_FILE_LINUXCONF (const char *_path,
const char *_subsys);
PUBLIC int CONFIG_FILE_LINUXCONF::archive (SSTREAM&ss)const;
***************
*** 312,317 ****
--- 318,333 ----
PUBLIC int CONFIG_FILE_LINUXCONF::extract (void);
/* malloc.cc 14/08/1996 14.40.26 */
/* misc.cc 12/12/1999 22.25.52 */
+ /* module_api.cc 13/12/1999 21.53.12 */
+ PUBLIC MODULE_API::MODULE_API (void * (*_fctget)(),
+ void (*_fctrelease)(void *));
+ PUBLIC MODULE_API *MODULE_APIS::getitem (int no)const;
+ PUBLIC MODULE_APIREF::MODULE_APIREF (const char *_apiname,
+ int _version);
+ PUBLIC MODULE_APIREF::~MODULE_APIREF (void);
+ PUBLIC void MODULE_APIREF::add (void * (*_fctget)(),
+ void (*_fctrelease)(void *));
+ PUBLIC MODULE_APIREF *MODULE_APIREFS::getitem (int no)const;
/* module.cc 12/12/1999 22.23.12 */
PUBLIC LINUXCONF_MODULE *LINUXCONF_MODULES::getitem (int no);
PUBLIC LINUXCONF_MODULE::LINUXCONF_MODULE (const char *_name);
***************
*** 344,360 ****
PUBLIC int MODULE_INFOS::write (void);
PUBLIC void MODULE_INFOS::setone (const char *path);
PUBLIC void MODULE_INFOS::unsetone (const char *path);
! /* module_api.cc 13/12/1999 21.53.12 */
! PUBLIC MODULE_API::MODULE_API (void * (*_fctget)(),
! void (*_fctrelease)(void *));
! PUBLIC MODULE_API *MODULE_APIS::getitem (int no)const;
! PUBLIC MODULE_APIREF::MODULE_APIREF (const char *_apiname,
! int _version);
! PUBLIC MODULE_APIREF::~MODULE_APIREF (void);
! PUBLIC void MODULE_APIREF::add (void * (*_fctget)(),
! void (*_fctrelease)(void *));
! PUBLIC MODULE_APIREF *MODULE_APIREFS::getitem (int no)const;
! /* popen.cc 06/01/2000 23.23.20 */
PROTECTED void POPENFD::setfds (int fdin,
int fdout,
int fderr,
--- 360,366 ----
PUBLIC int MODULE_INFOS::write (void);
PUBLIC void MODULE_INFOS::setone (const char *path);
PUBLIC void MODULE_INFOS::unsetone (const char *path);
! /* popen.cc 25/01/2000 10.49.24 */
PROTECTED void POPENFD::setfds (int fdin,
int fdout,
int fderr,
***************
*** 474,485 ****
PUBLIC void SSTRINGS::remove_empty (void);
PUBLIC void SSTRINGS::remove_dups (void);
PUBLIC void SSTRINGS::append (const SSTRINGS&tb);
- /* str.cc 28/07/1998 14.20.02 */
/* str1.cc 12/11/1997 02.59.48 */
/* str3.cc 12/12/1999 22.09.10 */
/* str6.cc 29/11/1997 13.38.50 */
! /* stub.cc 13/12/1999 21.53.12 */
! /* subsys.cc 12/12/1999 22.10.50 */
PRIVATE void LINUXCONF_SUBSYS::init (const char *key);
PUBLIC LINUXCONF_SUBSYS::LINUXCONF_SUBSYS (const char *key,
TRANS_NOTLOAD *_title);
--- 480,491 ----
PUBLIC void SSTRINGS::remove_empty (void);
PUBLIC void SSTRINGS::remove_dups (void);
PUBLIC void SSTRINGS::append (const SSTRINGS&tb);
/* str1.cc 12/11/1997 02.59.48 */
/* str3.cc 12/12/1999 22.09.10 */
/* str6.cc 29/11/1997 13.38.50 */
! /* str.cc 28/07/1998 14.20.02 */
! /* stub.cc 24/01/2000 15.52.46 */
! /* subsys.cc 28/01/2000 10.42.00 */
PRIVATE void LINUXCONF_SUBSYS::init (const char *key);
PUBLIC LINUXCONF_SUBSYS::LINUXCONF_SUBSYS (const char *key,
TRANS_NOTLOAD *_title);
*** 1.17r3/linuxconf/modules/mailconf/generate.cc Tue Feb 8 17:20:37 2000
--- 1,17r4/linuxconf/modules/mailconf/generate.cc Thu Feb 17 00:38:22 2000
***************
*** 495,501 ****
return ret;
}
! PUBLIC int MAILCONF::generate_go()
{
int ret = -1;
FILE *fout = f_sendmail.fopen ("w");
--- 495,501 ----
return ret;
}
! PUBLIC int MAILCONF::generate_go(bool confirm)
{
int ret = -1;
FILE *fout = f_sendmail.fopen ("w");
***************
*** 508,514 ****
linuxconf_setcursys(subsys_sendmail);
confread_replace (K_SENDMAILSUM,sum);
linuxconf_save();
! if (ret != -1){
xconf_notice (MSG_U(N_HASGEN,"%s has been regenerated!")
,f_sendmail.getpath());
}
--- 508,514 ----
linuxconf_setcursys(subsys_sendmail);
confread_replace (K_SENDMAILSUM,sum);
linuxconf_save();
! if (ret != -1 && confirm){
xconf_notice (MSG_U(N_HASGEN,"%s has been regenerated!")
,f_sendmail.getpath());
}
***************
*** 525,531 ****
Return -1 if any error
*/
! PUBLIC int MAILCONF::generate()
{
int ret = -1;
const char *path = f_sendmail.getpath();
--- 525,531 ----
Return -1 if any error
*/
! PUBLIC int MAILCONF::generate(bool confirm)
{
int ret = -1;
const char *path = f_sendmail.getpath();
***************
*** 558,564 ****
rename (path,pathold);
}
}
! if (go) ret = generate_go();
return ret;
}
/*
--- 558,564 ----
rename (path,pathold);
}
}
! if (go) ret = generate_go(confirm);
return ret;
}
/*
***************
*** 583,589 ****
0 if all is fine
-1 if any error
*/
! PUBLIC int MAILCONF::generate_if()
{
int ret = -1;
if (mailconf_generated_once()){
--- 583,589 ----
0 if all is fine
-1 if any error
*/
! PUBLIC int MAILCONF::generate_if(bool confirm)
{
int ret = -1;
if (mailconf_generated_once()){
***************
*** 606,612 ****
,f_sendmail.getpath());
ret = 1;
if (!simul_ison()){
! ret = generate_go();
if (ret != -1) ret = 1;
}
}
--- 606,612 ----
,f_sendmail.getpath());
ret = 1;
if (!simul_ison()){
! ret = generate_go(confirm);
if (ret != -1) ret = 1;
}
}
*** 1.17r3/linuxconf/modules/mailconf/internal.h Sun Dec 12 22:23:14 1999
--- 1,17r4/linuxconf/modules/mailconf/internal.h Thu Feb 17 00:38:51 2000
***************
*** 340,348 ****
private:
int generate (FILE *fout);
public:
! int generate (void);
! int generate_go (void);
! int generate_if (void);
private:
bool generated_byme (char sendmail_sum[]);
public:
--- 340,348 ----
private:
int generate (FILE *fout);
public:
! int generate (bool confirm);
! int generate_go (bool confirm);
! int generate_if (bool confirm);
private:
bool generated_byme (char sendmail_sum[]);
public:
*** 1.17r3/linuxconf/modules/mailconf/mailconf.cc Sun Dec 12 22:10:51 1999
--- 1,17r4/linuxconf/modules/mailconf/mailconf.cc Thu Feb 17 00:42:24 2000
***************
*** 89,95 ****
,sendpath.get());
if (xconf_yesno(buf,intro,help_mailconf) == MENU_YES){
MAILCONF mconf;
! mconf.generate();
}
}
break;
--- 89,95 ----
,sendpath.get());
if (xconf_yesno(buf,intro,help_mailconf) == MENU_YES){
MAILCONF mconf;
! mconf.generate(true);
}
}
break;
***************
*** 127,133 ****
spam_edit_relay_allow();
}else if (key == sendpath.get()){
if (dialog_mode != DIALOG_TREE){
! mconf.generate();
modified = 0;
}
}
--- 127,133 ----
spam_edit_relay_allow();
}else if (key == sendpath.get()){
if (dialog_mode != DIALOG_TREE){
! mconf.generate(true);
modified = 0;
}
}
***************
*** 170,176 ****
mtable_makemap(f_virtuser);
mtable_makemap(f_pophash);
MAILCONF mconf;
! ret = mconf.generate_if();
}
return ret;
}
--- 170,176 ----
mtable_makemap(f_virtuser);
mtable_makemap(f_pophash);
MAILCONF mconf;
! ret = mconf.generate_if(true);
}
return ret;
}
*** 1.17r3/linuxconf/modules/mailconf/mod_mailconf.cc Thu Jan 6 00:12:34 2000
--- 1,17r4/linuxconf/modules/mailconf/mod_mailconf.cc Mon Feb 21 11:48:07 2000
***************
*** 11,16 ****
--- 11,17 ----
#include
#include "mod_mailconf.h"
#include "mailconf.m"
+ #include "internal.h"
#include
#include
#include
***************
*** 81,104 ****
return 0;
}
!
! PUBLIC int MODULE_mailconf::dohtml (const char *key)
{
! int ret = LNCF_NOT_APPLICABLE;
! if (strcmp(key,"mailconf")==0){
! // ### Insert any menu and dialog here
ret = 0;
}
return ret;
}
! PUBLIC int MODULE_mailconf::message (
! const char *msg,
! int,
! const char *argv[])
{
int ret = LNCF_NOT_APPLICABLE;
! if (strcmp(msg,"editvdom")==0){
USER *like;
if (special_init (POP_GROUP,like) != -1){
vdomain_editusers(like);
--- 82,116 ----
return 0;
}
! /*
! Let one user edit his password in a vdomain
! */
! static int mailconf_editupass(const char *hostname)
{
! int ret = -1;
! char pwdfile[PATH_MAX],shadowfile[PATH_MAX],rootdir[PATH_MAX];
! if (vdomain_locateinfo(hostname,pwdfile,shadowfile,rootdir)!=-1){
! CONFIG_FILE file (pwdfile,help_nil
! ,CONFIGF_MANAGED|CONFIGF_OPTIONNAL
! ,"root","mail",0640);
! CONFIG_FILE file_shadow (shadowfile,help_nil
! ,CONFIGF_MANAGED|CONFIGF_OPTIONNAL
! ,"root","mail",0640);
! USERS users (file,file_shadow,rootdir,"","",0);
! userconf_editupass (users,hostname);
ret = 0;
}
return ret;
}
!
! PUBLIC int MODULE_mailconf::dohtml (const char *key)
{
int ret = LNCF_NOT_APPLICABLE;
! if (strncmp(key,"vpass-",6)==0){
! if (mailconf_editupass (key+6)==-1) html_setdone();
! ret = 0;
! }else if (strncmp(key,"vuser-",6)==0){
USER *like;
if (special_init (POP_GROUP,like) != -1){
vdomain_editusers(like);
***************
*** 106,128 ****
}
delete like;
ret = 0;
! }else if (strcmp(msg,"listspc")==0){
vdomain_listspc ();
ret = 0;
}else if (strcmp(msg,"editupass")==0){
! const char *hostname = argv[0];
! char pwdfile[PATH_MAX],shadowfile[PATH_MAX],rootdir[PATH_MAX];
! if (vdomain_locateinfo(hostname,pwdfile,shadowfile,rootdir)!=-1){
! CONFIG_FILE file (pwdfile,help_nil
! ,CONFIGF_MANAGED|CONFIGF_OPTIONNAL
! ,"root","mail",0640);
! CONFIG_FILE file_shadow (shadowfile,help_nil
! ,CONFIGF_MANAGED|CONFIGF_OPTIONNAL
! ,"root","mail",0640);
! USERS users (file,file_shadow,rootdir,"","",0);
! userconf_editupass (users,hostname);
! ret = 0;
! }
}
return ret;
}
--- 118,138 ----
}
delete like;
ret = 0;
! }
! return ret;
! }
!
! PUBLIC int MODULE_mailconf::message (
! const char *msg,
! int,
! const char *argv[])
! {
! int ret = LNCF_NOT_APPLICABLE;
! if (strcmp(msg,"listspc")==0){
vdomain_listspc ();
ret = 0;
}else if (strcmp(msg,"editupass")==0){
! if (mailconf_editupass(argv[0])!=-1) ret = 0;
}
return ret;
}
***************
*** 220,225 ****
--- 230,236 ----
" --delvdom domain\n"
" --addvuser domain id name\n"
" --delvuser domain id\n"
+ " --generatecf\n"
" --setalias alias value ...\n"
" --setvalias alias vdomain value ...\n"
" --unsetalias alias [value] ...\n"
***************
*** 289,294 ****
--- 300,310 ----
}
}else{
::usage();
+ }
+ }else if (argc == 2 && strcmp(argv[1],"--generatecf")==0){
+ if (netconf_rootaccess()){
+ MAILCONF mconf;
+ ret = mconf.generate_if(false);
}
}else{
::usage();
*** 1.17r3/linuxconf/modules/mailconf/vdomain.cc Thu Jan 6 00:09:35 2000
--- 1,17r4/linuxconf/modules/mailconf/vdomain.cc Mon Feb 21 11:16:56 2000
***************
*** 759,765 ****
const char *name = v->domain.get();
html_printf ("
\n\n")
,server);
}
! void upass_setend (DIALOG &dia, const char *server)
{
! /* #Specification: html password dialog / end of page
! The admin may supply a file /etc/passwd.htmlend. This
! file must contain html and will be inserted in the
! html dialog letting a user change his password.
! */
! /* Added by jmdault@netrevolution.com on 02/13/2000:
! For virtual pop servers, you can supply a file
! /etc/vmail/htmlend.DOMAIN. When a virtual pop
! user wants to change his password, he will get
! the html from the domain file.
! */
! char htmlpath[PATH_MAX];
! sprintf(htmlpath,"%s/htmlend.%s",ETC_VMAIL,server);
! CONFIG_FILE f_end (htmlpath,help_nil,CONFIGF_OPTIONNAL);
! static CONFIG_FILE default_end (ETC_PASSWD_HTMLEND,help_nil,CONFIGF_OPTIONNAL);
!
! FILE *fin = f_end.fopen ("r");
! if (fin != NULL){
! char buf[500];
! while (fgets(buf,sizeof(buf)-1,fin)!=NULL){
! dia.html_end ("%s",buf);
! }
! fclose (fin);
! } else {
! FILE *default_fin = default_end.fopen ("r");
! if (default_fin != NULL){
! char buf[500];
! while (fgets(buf,sizeof(buf)-1,default_fin)!=NULL){
! dia.html_end ("%s",buf);
! }
! fclose (default_fin);
! } else {
! dia.html_end ("%s",
! "