Sync with FreeBSD. This removes the need for perl.
[dragonfly.git] / release / picobsd / dial / lang / dialup.pl
1 #!/bin/sh
2 # $FreeBSD: src/release/picobsd/dial/lang/dialup.pl,v 1.5 1999/08/28 01:33:20 peter Exp $
3 # $DragonFly: src/release/picobsd/dial/lang/Attic/dialup.pl,v 1.2 2003/06/17 04:27:20 dillon Exp $
4 set_resolv() {
5         echo "\e[H\e[J"
6         echo "\e[1m                       Domy¶lna Nazwa Domeny\e[m"
7         echo ""
8         echo "Podaj domy¶ln± nazwê domeny Internetowej, której bêdziesz u¿ywaæ."
9         echo "Je¶li Twój provider ma nazwy typu 'www.akuku.com.pl', to bêdzie"
10         echo "to najprawdopodobniej 'akuku.com.pl'."
11         echo ""
12         echo "Je¶li po prostu naci¶niesz Enter, ustawisz (nieistniej±c±) domenê"
13         echo "'mydomain.org.pl', co nie jest najlepszym pomys³em, ale mo¿e na"
14         echo "razie wystarczyæ."
15         echo ""
16         read -p "Podaj domy¶ln± nazwê domeny: " domain
17         if [ "X${domain}" = "X" ]
18         then
19                 echo ""
20                 echo "Dobrze, ustawimy 'mydomain.org.pl', ale miej ¶wiadomo¶æ"
21                 echo "¿e taka domena prawdopodobnie nie istnieje."
22                 echo ""
23                 read -p "Naci¶nij Enter" junk
24                 domain="mydomain.org.pl"
25         fi
26         echo "\e[H\e[J"
27         echo "\e[1m                      Adres Serwera DNS\e[m"
28         echo ""
29         echo "Podaj adres w postaci numerycznej serwera DNS. Jest on potrzebny"
30         echo "do zamiany nazw (takich jak www.freebsd.org.pl) na adresy IP"
31         echo "(takie jak 192.168.1.1). Je¶li nie jest to ustawione poprawnie,"
32         echo "bêdziesz musia³ pos³ugiwaæ siê adresami IP podczas ³±czenia siê"
33         echo "z innymi maszynami - jest to co najmniej niewygodne."
34         echo ""
35         echo "Je¶li po prostu naci¶niesz Enter, ustawisz (istniej±cy) serwer"
36         echo "o numerze 194.204.159.1 (w sieci TP SA)."
37         echo ""
38         read -p "Podaj adres IP serwera DNS (w postaci A.B.C.D): " dns
39         if [ "X${dns}" = "X" ]
40         then
41                 echo ""
42                 echo "Dobrze, ustawimy adres DNS serwera na 194.204.159.1, ale"
43                 echo "niekoniecznie musi to byæ najlepszy serwer w Twojej czê¶ci sieci."
44                 echo ""
45                 read -p "Naci¶nij Enter..." junk
46                 dns="194.204.159.1"
47         fi
48 }
49 set_phone() {
50 while [ "X${phone}" = "X" ]
51 do
52         echo "\e[H\e[J"
53         echo "\e[1m                        Numer Telefoniczny\e[m"
54         echo ""
55         echo "Podaj numer telefoniczny, którego normalnie u¿ywasz, ¿eby"
56         echo "dodzwoniæ siê do swojego providera. Powiniene¶ podaæ pe³ny"
57         echo "numer, z ewentualnymi przedrostkami, np: 022113355"
58         echo ""
59         read -p "Podaj numer telefoniczny: " phone
60 done
61 }
62
63 set_port() {
64 while [ "X${dev}" = "X" ]
65 do
66         echo "\e[H\e[J"
67         echo "\e[1m                        Numer Portu Modemowego\e[m"
68         echo ""
69         echo "Podaj numer portu szeregowego, do którego pod³±czony jest modem."
70         echo "UWAGA: DOSowy port COM1 to port 0 (cuaa0) we FreeBSD, COM2 -"
71         echo "port 1, itd. Podaj tutaj tylko numer, a nie pe³n± nazwê urz±dzenia."
72         echo ""
73         read -p "Podaj numer portu szeregowego (0,1,2): " dev
74 done
75 }
76
77 set_speed() {
78 while [ "X${speed}" = "X" ]
79 do
80         echo "\e[H\e[J"
81         echo "\e[1m                      Prêdko¶æ Linii Szeregowej\e[m"
82         echo ""
83         echo "Wybierz prêdko¶æ linii szeregowej, której u¿ywa modem."
84         echo ""
85         echo "UWAGA: Prêdko¶æ linii szeregowej NIE jest tym samym, co prêdko¶æ"
86         echo "modemu. Je¶li Twój modem obs³uguje protokó³ V.42 lub MNP"
87         echo "(zazwyczaj tak w³a¶nie jest), prêdko¶æ linii szeregowej musi byæ"
88         echo "du¿o wiêksza od prêdko¶ci modemu. Np. dla modemów 14.4 kbps z"
89         echo "kompresj± nale¿y wybraæ prêdko¶æ 38400 bps, a dla modemów"
90         echo "28.8 kbps z kompresj± nale¿y wybraæ prêdko¶æ 115200 bps."
91         echo ""
92         echo "  1.      9600   bps"
93         echo "  2.      14400  bps"
94         echo "  3.      28800  bps"
95         echo "  4.      38400  bps (modem 14.4 kbps z kompresj±)"
96         echo "  5.      57600  bps"
97         echo "  6.      115200 bps (modem 28.8 kbps z kompresj±)"
98         echo ""
99         read -p "Wybierz prêdko¶æ linii szeregowej (1-6): " ans
100         case ${ans} in
101         1)
102                 speed=9600
103                 ;;
104         2)
105                 speed=14400
106                 ;;
107         3)
108                 speed=28800
109                 ;;
110         4)
111                 speed=38400
112                 ;;
113         5)
114                 speed=57600
115                 ;;
116         6)
117                 speed=115200
118                 ;;
119         *)
120                 read -p "Z³a warto¶æ! Naci¶nij Enter..." junk
121                 unset speed
122                 ;;
123         esac
124 done
125 }
126
127 set_timeout() {
128 while [ "X${timo}" = "X" ]
129 do
130         echo "\e[H\e[J"
131         echo "\e[1m                        Czas roz³±czenia\e[m"
132         echo ""
133         echo "Podaj czas (w sekundach), po którym, je¶li nie ma ruchu na ³±czu,"
134         echo "nast±pi automatyczne roz³±czenie. To pomaga w oszczêdzaniu :-)"
135         echo ""
136         read -p "Podaj czas roz³±czenia: " timo
137 done
138 }
139
140 set_user() {
141 while [ "X${user}" = "X" ]
142 do
143         echo "\e[H\e[J"
144         echo "\e[1m                        Nazwa U¿ytkownika\e[m"
145         echo ""
146         echo "Podaj nazwê u¿ytkownika (login name), której normalnie u¿ywasz"
147         echo "do zalogowania siê do serwera komunikacyjnego providera."
148         echo ""
149         read -p "Podaj nazwê u¿ytkownika: " user
150 done
151 }
152
153 set_pass() {
154 while [ "X${pass}" = "X" ]
155 do
156         echo "\e[H\e[J"
157         echo "\e[1m                        Has³o\e[m"
158         echo ""
159         echo "Podaj has³o, którego u¿ywasz do zalogowania siê do providera."
160         echo ""
161         echo "\e[31mUWAGA: Has³o to zostanie zapisane w czytelnej postaci na"
162         echo "dyskietce!!! Je¶li tego nie chcesz... bêdziesz musia³ logowaæ siê"
163         echo "rêcznie, tak jak dotychczas. W tym przypadku przerwij ten skrypt"
164         echo "przez Ctrl-C.\e[37m"
165         echo ""
166         stty -echo
167         read -p "Podaj swoje has³o: " pass
168         echo ""
169         read -p "Podaj powtórnie swoje has³o: " pass1
170         stty echo
171         echo ""
172         if [ "X${pass}" != "X${pass1}" ]
173         then
174                 echo "\aHas³a nie pasuj± do siebie. Naci¶nij Enter..."
175                 pass=""
176                 read junk
177                 set_pass
178         fi
179 done
180 }
181
182 set_chat() {
183 echo "\e[H\e[J"
184 while [ "X${chat}" = "X" ]
185 do
186         echo "\e[1m               Rodzaj dialogu podczas logowania siê\e[m"
187         echo ""
188         echo "Jak normalnie przebiega proces logowania siê do serwera"
189         echo "komunikacyjnego?"
190         echo ""
191         echo "1)        \e[32m......login:\e[37m ${user}"
192         echo "  \e[32m...password:\e[37m ********"
193         echo "          \e[36m(tutaj startuje PPP)\e[37m"
194         echo ""
195         echo "2)        \e[32m...username:\e[37m ${user}                  (TP S.A.)"
196         echo "  \e[32m...password:\e[37m ********"
197         echo "          \e[36m(tutaj startuje PPP)\e[37m"
198         echo ""
199         echo "3)        \e[32m......username:\e[37m ${user}                       (NASK)"
200         echo "  \e[32m......password:\e[37m ********"
201         echo "  \e[32mportX/..xxx...:\e[37m ppp"
202         echo "          \e[36m(tutaj startuje PPP)\e[37m"
203         echo ""
204         echo "4)        \e[32mZastosuj CHAP\e[37m"
205         echo ""
206         echo "5)        \e[32mZastosuj PAP\e[37m"
207         echo ""
208         read -p "Wybierz 1,2,3,4 lub 5: " chat
209         case ${chat} in
210         1)
211                 chat1="TIMEOUT 10 ogin:--ogin: ${user} word: \\\\P"
212                 chat2="login/password"
213                 ;;
214         2)
215                 chat1="TIMEOUT 10 ername:--ername: ${user} word: \\\\P"
216                 chat2="TP SA - username/password"
217                 ;;
218         3)
219                 chat1="TIMEOUT 10 ername:--ername: ${user} word: \\\\P port ppp"
220                 chat2="NASK - username/password/port"
221                 ;;
222         4)      chat1="-"
223                 chat2="CHAP"
224                 ;;
225         5)      chat1="-"
226                 chat2="PAP"
227                 ;;
228         *)      echo "\aZ³a warto¶æ! Musisz wybraæ 1,2 lub 3."
229                 echo ""
230                 unset chat
231                 unset chat2
232                 ;;
233         esac
234 done
235 }
236
237
238 # Main entry of the script
239
240 echo "\e[H\e[J"
241 echo "\e[1m              Witamy w Automatycznym Konfiguratorze PPP! :-)\e[m"
242 echo ""
243 echo "    PPP jest ju¿ wstêpnie skonfigurowane, tak ¿e mo¿na rêcznie wybieraæ"
244 echo "numer i rêcznie logowaæ siê do serwera komunikacyjnego. Jest to jednak"
245 echo "dosyæ uci±¿liwy sposób na d³u¿sz± metê."
246 echo ""
247 echo "Ten skrypt postara siê stworzyæ tak± konfiguracjê PPP, ¿eby umo¿liwiæ"
248 echo "automatyczne wybieranie numeru i logowanie siê, a ponadto pozwoli na"
249 echo "uruchamianie ppp w tle - nie zajmuje ono wówczas konsoli."
250 echo ""
251 echo "Je¶li chcesz kontynuowaæ, naci¶nij \e[1mEnter\e[m, je¶li nie - \e[1mCtrl-C\e[m."
252 echo ""
253 read junk
254 # Step through the options
255 set_phone
256 set_port
257 set_speed
258 set_timeout
259 set_user
260 set_pass
261 set_chat
262 set_resolv
263
264 ans="loop_it"
265 while [ "X${ans}" != "X" ]
266 do
267
268 echo "\e[H\e[J"
269 echo "\e[1m     Ustawione zosta³y nastêpuj±ce parametry:\e[m"
270 echo ""
271 echo "  1.      Numer telef.:   ${phone}"
272 echo "  2.      Numer portu:    cuaa${dev}"
273 echo "  3.      Prêdko¶æ portu: ${speed}"
274 echo "  4.      Czas roz³±cz.:  ${timo} s"
275 echo "  5.      U¿ytkownik:     ${user}"
276 echo "  6.      Has³o:          ${pass}"
277 echo "  7.      Typ dialogu:    ${chat} (${chat2})"
278 echo "  8.      Nazwa domeny:   ${domain}"
279 echo "          Serwer DNS:     ${dns}"
280 echo ""
281 echo "Je¶li te warto¶ci s± poprawne, po prostu naci¶nij \e[1mEnter\e[m"
282 read -p "Je¶li nie, podaj numer opcji, któr± chcesz zmieniæ (1-8): " ans
283
284 a="X${ans}"
285 case ${a} in
286 X1)
287         unset phone
288         set_phone
289         ;;
290 X2)
291         unset dev
292         set_port
293         ;;
294 X3)
295         unset speed
296         set_speed
297         ;;
298 X4)
299         unset timo
300         set_timeout
301         ;;
302 X5)
303         unset user
304         set_user
305         ;;
306 X6)
307         unset pass
308         set_pass
309         ;;
310 X7)
311         unset chat
312         unset chat1
313         unset chat2
314         set_chat
315         ;;
316 X8)
317         unset domain
318         unset dns
319         set_resolv
320         ;;
321 X)
322         ;;
323 *)
324         read -p "Z³y numer opcji! Naci¶nij Enter..." junk
325         ans="wrong"
326         ;;
327 esac
328 done
329
330 echo ""
331 echo -n "Generowanie /etc/ppp/ppp.conf file..."
332 rm -f /etc/ppp/ppp.conf
333 cp /etc/ppp/ppp.conf.template /etc/ppp/ppp.conf
334 echo "" >>/etc/ppp/ppp.conf
335 echo "# This part was generated with $0" >>/etc/ppp/ppp.conf
336 echo "dialup:" >>/etc/ppp/ppp.conf
337 echo " set line /dev/cuaa${dev}" >>/etc/ppp/ppp.conf
338 echo " set phone ${phone}" >>/etc/ppp/ppp.conf
339 echo " set authkey ${pass}" >>/etc/ppp/ppp.conf
340 echo " set timeout ${timo}" >>/etc/ppp/ppp.conf
341 if [ "X${chat1}" = "-" ]
342 then
343         echo "set authname ${user}" >>/etc/ppp/ppp.conf
344 else
345         echo " set login \"${chat1}\"" >>/etc/ppp/ppp.conf
346 fi
347 echo " set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0" >>/etc/ppp/ppp.conf
348
349 echo " Zrobione."
350
351 echo -n "Generowanie /etc/resolv.conf..."
352 echo "# This file was generated with $0">/etc/resolv.conf
353 echo "domain ${domain}" >>/etc/resolv.conf
354 echo "nameserver ${dns}">>/etc/resolv.conf
355 echo "hostname=\"pico.${domain}\"">>/etc/rc.conf
356 echo " Zrobione."
357
358 echo ""
359 echo "Ok. Sprawd¼ zawarto¶æ /etc/ppp/ppp.conf, i popraw go je¶li to konieczne."
360 echo "Nastêpnie mo¿esz wystartowaæ ppp w tle:"
361 echo ""
362 echo "  \e[1mppp -background dialup\e[m"
363 echo ""
364 echo "PAMIÊTAJ, ¿eby uruchomiæ /stand/update ! Inaczej zmiany nie zostan± zapisane"
365 echo "na dyskietce!"
366 echo ""
367 echo "Ok. Je¶li Twój plik /etc/ppp/ppp.conf jest prawid³owy (co jest dosyæ"
368 echo -n "prawdopodobne :-), czy chcesz teraz uruchomiæ po³±czenie dialup? (t/n) "
369 read ans
370 opts=""
371 while [ "X${ans}" = "Xt" ]
372 do
373         echo "\e[H\e[J"
374         if [ "X${opts}" = "X" ]
375         then
376                 echo "Wystartujemy 'ppp' z poni¿szymi opcjami:"
377                 echo ""
378                 echo "          ppp -background dialup"
379                 echo ""
380                 echo -n "Czy chcesz je zmienic?? (t/n) "
381                 read oo
382                 if [ "X${oo}" = "Xt" ]
383                 then
384                         read -p "Podaj opcje ppp: " opts
385                 else
386                         opts="-background dialup"
387                 fi
388                 echo ""
389                 echo ""
390         fi
391         echo "Uruchamiam po³±czenie dialup. Proszê czekaæ dopóki nie pojawi siê"
392         echo "komunikat 'PPP Enabled'..."
393         echo ""
394         ppp -background dialup
395         if [ "X$?" != "X0" ]
396         then
397                 echo -n "Po³±czenie nie powiod³o siê. Spróbowaæ jeszcze raz?  (t/n) "
398                 read ans
399                 if [ "X${ans}" != "Xt" ]
400                 then
401                         echo "Spróbuj pó¼niej. Sprawd¼ równie¿ plik konfiguracyjny /etc/ppp/ppp.conf."
402                         echo ""
403                 fi
404         else
405                 echo ""
406                 echo "Gratulujê! Jeste¶ on-line."
407                 echo ""
408                 exit 0
409         fi
410 done