mirror of
https://git.rtems.org/rtems-libbsd/
synced 2025-10-17 09:22:15 +08:00
ppp: Port to new stack
This commit is contained in:
@@ -38,8 +38,6 @@
|
||||
#include "ipcp.h"
|
||||
#include "pathnames.h"
|
||||
|
||||
#include <rtems/bsdnet/servers.h>
|
||||
|
||||
static const char rcsid[] = RCSID;
|
||||
|
||||
/* global vars */
|
||||
@@ -1577,23 +1575,24 @@ static void
|
||||
create_resolv(
|
||||
uint32_t peerdns1, uint32_t peerdns2)
|
||||
{
|
||||
/* initialize values */
|
||||
rtems_bsdnet_nameserver_count = 0;
|
||||
FILE *f;
|
||||
|
||||
/* check to see if primary was specified */
|
||||
if ( peerdns1 ) {
|
||||
rtems_bsdnet_nameserver[rtems_bsdnet_nameserver_count].s_addr = peerdns1;
|
||||
rtems_bsdnet_nameserver_count++;
|
||||
}
|
||||
f = fopen(_PATH_RESOLV, "w");
|
||||
if (f == NULL) {
|
||||
error("Failed to create %s: %m", _PATH_RESOLV);
|
||||
return;
|
||||
}
|
||||
|
||||
/* check to see if secondary was specified */
|
||||
if ( peerdns2 ) {
|
||||
rtems_bsdnet_nameserver[rtems_bsdnet_nameserver_count].s_addr = peerdns2;
|
||||
rtems_bsdnet_nameserver_count++;
|
||||
}
|
||||
if (peerdns1)
|
||||
fprintf(f, "nameserver %s\n", ip_ntoa(peerdns1));
|
||||
|
||||
/* initialize resolver */
|
||||
__res_init();
|
||||
if (peerdns2)
|
||||
fprintf(f, "nameserver %s\n", ip_ntoa(peerdns2));
|
||||
|
||||
if (ferror(f))
|
||||
error("Write failed to %s: %m", _PATH_RESOLV);
|
||||
|
||||
fclose(f);
|
||||
}
|
||||
|
||||
/*
|
||||
|
147
rtemsbsd/pppd/namespace.h
Normal file
147
rtemsbsd/pppd/namespace.h
Normal file
@@ -0,0 +1,147 @@
|
||||
#define abort_next rtems_pppd_abort_next
|
||||
#define abort_string rtems_pppd_abort_string
|
||||
#define allow_any_ip rtems_pppd_allow_any_ip
|
||||
#define auth_linkdown_hook rtems_pppd_auth_linkdown_hook
|
||||
#define auth_linkup_hook rtems_pppd_auth_linkup_hook
|
||||
#define auth_options rtems_pppd_auth_options
|
||||
#define auth_required rtems_pppd_auth_required
|
||||
#define baud_rate rtems_pppd_baud_rate
|
||||
#define callback_script rtems_pppd_callback_script
|
||||
#define ccp_allowoptions rtems_pppd_ccp_allowoptions
|
||||
#define ccp_fsm rtems_pppd_ccp_fsm
|
||||
#define ccp_gotoptions rtems_pppd_ccp_gotoptions
|
||||
#define ccp_hisoptions rtems_pppd_ccp_hisoptions
|
||||
#define ccp_protent rtems_pppd_ccp_protent
|
||||
#define ccp_wantoptions rtems_pppd_ccp_wantoptions
|
||||
#define chap rtems_pppd_chap
|
||||
#define chap_protent rtems_pppd_chap_protent
|
||||
#define clear_abort_next rtems_pppd_clear_abort_next
|
||||
#define clear_report_next rtems_pppd_clear_report_next
|
||||
#define connect_delay rtems_pppd_connect_delay
|
||||
#define connect_script rtems_pppd_connect_script
|
||||
#define connect_script_info rtems_pppd_connect_script_info
|
||||
#define crtscts rtems_pppd_crtscts
|
||||
#define cryptpap rtems_pppd_cryptpap
|
||||
#define current_option rtems_pppd_current_option
|
||||
#define debug rtems_pppd_debug
|
||||
#define default_device rtems_pppd_default_device
|
||||
#define demand rtems_pppd_demand
|
||||
#define detached rtems_pppd_detached
|
||||
#define devnam rtems_pppd_devnam
|
||||
#define devnam_fixed rtems_pppd_devnam_fixed
|
||||
#define devnam_info rtems_pppd_devnam_info
|
||||
#define devstat rtems_pppd_devstat
|
||||
#define disable_defaultip rtems_pppd_disable_defaultip
|
||||
#define disconnect_script rtems_pppd_disconnect_script
|
||||
#define disconnect_script_info rtems_pppd_disconnect_script_info
|
||||
#define do_callback rtems_pppd_do_callback
|
||||
#define doing_callback rtems_pppd_doing_callback
|
||||
#define echo_next rtems_pppd_echo_next
|
||||
#define explicit_remote rtems_pppd_explicit_remote
|
||||
#define fail_buffer rtems_pppd_fail_buffer
|
||||
#define fail_reason rtems_pppd_fail_reason
|
||||
#define general_options rtems_pppd_general_options
|
||||
#define holdoff rtems_pppd_holdoff
|
||||
#define holdoff_hook rtems_pppd_holdoff_hook
|
||||
#define holdoff_specified rtems_pppd_holdoff_specified
|
||||
#define hostname rtems_pppd_hostname
|
||||
#define hungup rtems_pppd_hungup
|
||||
#define hup_next rtems_pppd_hup_next
|
||||
#define idle_time_hook rtems_pppd_idle_time_hook
|
||||
#define idle_time_limit rtems_pppd_idle_time_limit
|
||||
#define ifname rtems_pppd_ifname
|
||||
#define initializer rtems_pppd_initializer
|
||||
#define initializer_info rtems_pppd_initializer_info
|
||||
#define inpacket_buf rtems_pppd_inpacket_buf
|
||||
#define inspeed rtems_pppd_inspeed
|
||||
#define ipcp_allowoptions rtems_pppd_ipcp_allowoptions
|
||||
#define ipcp_fsm rtems_pppd_ipcp_fsm
|
||||
#define ipcp_gotoptions rtems_pppd_ipcp_gotoptions
|
||||
#define ipcp_hisoptions rtems_pppd_ipcp_hisoptions
|
||||
#define ipcp_protent rtems_pppd_ipcp_protent
|
||||
#define ipcp_wantoptions rtems_pppd_ipcp_wantoptions
|
||||
#define ip_down_hook rtems_pppd_ip_down_hook
|
||||
#define ipparam rtems_pppd_ipparam
|
||||
#define ip_up_hook rtems_pppd_ip_up_hook
|
||||
#define kdebugflag rtems_pppd_kdebugflag
|
||||
#define lcp_allowoptions rtems_pppd_lcp_allowoptions
|
||||
#define lcp_fsm rtems_pppd_lcp_fsm
|
||||
#define lcp_gotoptions rtems_pppd_lcp_gotoptions
|
||||
#define lcp_hisoptions rtems_pppd_lcp_hisoptions
|
||||
#define lcp_loopbackfail rtems_pppd_lcp_loopbackfail
|
||||
#define lcp_protent rtems_pppd_lcp_protent
|
||||
#define lcp_wantoptions rtems_pppd_lcp_wantoptions
|
||||
#define line rtems_pppd_line
|
||||
#define linep rtems_pppd_linep
|
||||
#define link_connect_time rtems_pppd_link_connect_time
|
||||
#define linkname rtems_pppd_linkname
|
||||
#define link_stats rtems_pppd_link_stats
|
||||
#define link_stats_valid rtems_pppd_link_stats_valid
|
||||
#define lockflag rtems_pppd_lockflag
|
||||
#define log_to_fd rtems_pppd_log_to_fd
|
||||
#define log_to_file rtems_pppd_log_to_file
|
||||
#define maxconnect rtems_pppd_maxconnect
|
||||
#define maxfail rtems_pppd_maxfail
|
||||
#define modem rtems_pppd_modem
|
||||
#define n_aborts rtems_pppd_n_aborts
|
||||
#define need_holdoff rtems_pppd_need_holdoff
|
||||
#define netmask rtems_pppd_netmask
|
||||
#define new_phase_hook rtems_pppd_new_phase_hook
|
||||
#define nodetach rtems_pppd_nodetach
|
||||
#define no_ppp_msg rtems_pppd_no_ppp_msg
|
||||
#define notty rtems_pppd_notty
|
||||
#define n_reports rtems_pppd_n_reports
|
||||
#define open_ccp_flag rtems_pppd_open_ccp_flag
|
||||
#define option_source rtems_pppd_option_source
|
||||
#define our_name rtems_pppd_our_name
|
||||
#define outpacket_buf rtems_pppd_outpacket_buf
|
||||
#define pap_auth_hook rtems_pppd_pap_auth_hook
|
||||
#define pap_check_hook rtems_pppd_pap_check_hook
|
||||
#define pap_logout_hook rtems_pppd_pap_logout_hook
|
||||
#define pap_passwd_hook rtems_pppd_pap_passwd_hook
|
||||
#define pap_protent rtems_pppd_pap_protent
|
||||
#define passwd rtems_pppd_passwd
|
||||
#define peer_authname rtems_pppd_peer_authname
|
||||
#define peer_mru rtems_pppd_peer_mru
|
||||
#define pend_q rtems_pppd_pend_q
|
||||
#define pend_qtail rtems_pppd_pend_qtail
|
||||
#define persist rtems_pppd_persist
|
||||
#define pppd_dialer rtems_pppd_pppd_dialer
|
||||
#define pppd_kill_link rtems_pppd_pppd_kill_link
|
||||
#define pppd_phase rtems_pppd_pppd_phase
|
||||
#define pppd_status rtems_pppd_pppd_status
|
||||
#define pppd_ttyfd rtems_pppd_pppd_ttyfd
|
||||
#define pppifunit rtems_pppd_pppifunit
|
||||
#define prepass rtems_pppd_prepass
|
||||
#define privileged rtems_pppd_privileged
|
||||
#define privileged_option rtems_pppd_privileged_option
|
||||
#define protocol_list rtems_pppd_protocol_list
|
||||
#define protocols rtems_pppd_protocols
|
||||
#define ptycommand rtems_pppd_ptycommand
|
||||
#define ptycommand_info rtems_pppd_ptycommand_info
|
||||
#define record_file rtems_pppd_record_file
|
||||
#define refuse_chap rtems_pppd_refuse_chap
|
||||
#define refuse_pap rtems_pppd_refuse_pap
|
||||
#define remote_name rtems_pppd_remote_name
|
||||
#define report_buffer rtems_pppd_report_buffer
|
||||
#define report_gathering rtems_pppd_report_gathering
|
||||
#define report_next rtems_pppd_report_next
|
||||
#define report_string rtems_pppd_report_string
|
||||
#define saved_tty_parameters rtems_pppd_saved_tty_parameters
|
||||
#define say_next rtems_pppd_say_next
|
||||
#define script_env rtems_pppd_script_env
|
||||
#define s_env_nalloc rtems_pppd_s_env_nalloc
|
||||
#define sync_serial rtems_pppd_sync_serial
|
||||
#define temp2 rtems_pppd_temp2
|
||||
#define timeout_next rtems_pppd_timeout_next
|
||||
#define tune_kernel rtems_pppd_tune_kernel
|
||||
#define unsuccess rtems_pppd_unsuccess
|
||||
#define upap rtems_pppd_upap
|
||||
#define updetach rtems_pppd_updetach
|
||||
#define usehostname rtems_pppd_usehostname
|
||||
#define uselogin rtems_pppd_uselogin
|
||||
#define user rtems_pppd_user
|
||||
#define using_pty rtems_pppd_using_pty
|
||||
#define welcomer rtems_pppd_welcomer
|
||||
#define welcomer_info rtems_pppd_welcomer_info
|
||||
#define xmit_accm rtems_pppd_xmit_accm
|
@@ -28,7 +28,7 @@
|
||||
#define _PATH_TTYOPT _ROOT_PATH "/etc/ppp/options."
|
||||
#define _PATH_CONNERRS _ROOT_PATH "/etc/ppp/connect-errors"
|
||||
#define _PATH_PEERFILES _ROOT_PATH "/etc/ppp/peers/"
|
||||
#define _PATH_RESOLV _ROOT_PATH "/etc/ppp/resolv.conf"
|
||||
#define _PATH_RESOLV _ROOT_PATH "/etc/resolv.conf"
|
||||
|
||||
#define _PATH_USEROPT ".ppprc"
|
||||
|
||||
|
@@ -31,6 +31,8 @@
|
||||
#include <net/ppp_defs.h>
|
||||
#include <rtems/rtemsdialer.h>
|
||||
#include <stdint.h>
|
||||
#include <arpa/nameser.h>
|
||||
#include <arpa/nameser_compat.h>
|
||||
|
||||
#if defined(__STDC__)
|
||||
#include <stdarg.h>
|
||||
@@ -46,6 +48,8 @@
|
||||
#include "eui64.h"
|
||||
#endif
|
||||
|
||||
#include "namespace.h"
|
||||
|
||||
/*
|
||||
* Limits.
|
||||
*/
|
||||
@@ -502,29 +506,6 @@ extern void (*auth_linkdown_hook)(void);
|
||||
*(cp)++ = (u_char) (c); \
|
||||
}
|
||||
|
||||
|
||||
#define GETSHORT(s, cp) { \
|
||||
(s) = *(cp)++ << 8; \
|
||||
(s) |= *(cp)++; \
|
||||
}
|
||||
#define PUTSHORT(s, cp) { \
|
||||
*(cp)++ = (u_char) ((s) >> 8); \
|
||||
*(cp)++ = (u_char) (s); \
|
||||
}
|
||||
|
||||
#define GETLONG(l, cp) { \
|
||||
(l) = *(cp)++ << 8; \
|
||||
(l) |= *(cp)++; (l) <<= 8; \
|
||||
(l) |= *(cp)++; (l) <<= 8; \
|
||||
(l) |= *(cp)++; \
|
||||
}
|
||||
#define PUTLONG(l, cp) { \
|
||||
*(cp)++ = (u_char) ((l) >> 24); \
|
||||
*(cp)++ = (u_char) ((l) >> 16); \
|
||||
*(cp)++ = (u_char) ((l) >> 8); \
|
||||
*(cp)++ = (u_char) (l); \
|
||||
}
|
||||
|
||||
#define INCPTR(n, cp) ((cp) += (n))
|
||||
#define DECPTR(n, cp) ((cp) -= (n))
|
||||
|
||||
|
@@ -41,6 +41,7 @@
|
||||
|
||||
#include <rtems.h>
|
||||
#include <rtems/rtems_bsdnet.h>
|
||||
#include <rtems/rtemsdialer.h>
|
||||
|
||||
#include "pppd.h"
|
||||
#include "magic.h"
|
||||
@@ -55,7 +56,6 @@
|
||||
#include "ccp.h"
|
||||
#include "pathnames.h"
|
||||
#include "patchlevel.h"
|
||||
#include "rtemsdialer.h"
|
||||
|
||||
#ifdef CBCP_SUPPORT
|
||||
#include "cbcp.h"
|
||||
|
@@ -10,10 +10,9 @@
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#include <rtems/rtemspppd.h>
|
||||
#include <rtems.h>
|
||||
#include <rtems/rtems_bsdnet.h>
|
||||
#include "pppd.h"
|
||||
#include "rtemspppd.h"
|
||||
|
||||
|
||||
/* define pppd function prototypes */
|
||||
@@ -82,11 +81,6 @@ int rtems_pppd_initialize(void)
|
||||
rtems_status_code status;
|
||||
rtems_name taskName;
|
||||
|
||||
/* determine priority value */
|
||||
if ( rtems_bsdnet_config.network_task_priority ) {
|
||||
priority = rtems_bsdnet_config.network_task_priority;
|
||||
}
|
||||
|
||||
/* initialize the exit hook */
|
||||
rtems_pppd_exitfp = (rtems_pppd_hookfunction)0;
|
||||
|
||||
|
@@ -59,7 +59,6 @@
|
||||
#include <rtems.h>
|
||||
#include <rtems/rtems_bsdnet.h>
|
||||
#include <rtems/termiostypes.h>
|
||||
extern int rtems_bsdnet_microseconds_per_tick;
|
||||
extern rtems_id rtems_pppd_taskid;
|
||||
|
||||
#include "pppd.h"
|
||||
@@ -500,7 +499,7 @@ ppp_delay(void)
|
||||
rtems_interval ticks;
|
||||
|
||||
/* recommended delay to help negotiation */
|
||||
ticks = 300000/rtems_bsdnet_microseconds_per_tick;
|
||||
ticks = 300000/rtems_configuration_get_microseconds_per_tick();
|
||||
rtems_task_wake_after(ticks);
|
||||
}
|
||||
|
||||
@@ -522,7 +521,7 @@ wait_input(
|
||||
wait = RTEMS_NO_WAIT;
|
||||
else {
|
||||
ticks = (timo->tv_sec * 1000000 + timo->tv_usec) /
|
||||
rtems_bsdnet_microseconds_per_tick;
|
||||
rtems_configuration_get_microseconds_per_tick();
|
||||
if(ticks <= 0)
|
||||
ticks = 1;
|
||||
}
|
||||
|
Reference in New Issue
Block a user