• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

FFFTPのソースコードです。


Commit MetaInfo

Revisiónfade6db78df2af1e75f0cdb7b68240eea92c1c54 (tree)
Tiempo2012-10-25 23:58:43
Autors_kawamoto <s_kawamoto@user...>
Commiters_kawamoto

Log Message

Add support for uClinux ftpd (untested).

Cambiar Resumen

Diferencia incremental

Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
--- a/common.h
+++ b/common.h
@@ -313,6 +313,8 @@
313313 #if defined(HAVE_TANDEM)
314314 #define LIST_TANDEM 50 /* HP NonStop Server */
315315 #endif
316+// uClinux
317+#define LIST_UNIX_17 51 /* UNIX 17 */
316318
317319 #define LIST_MELCOM 0x100 /* MELCOM80 */
318320
@@ -694,6 +696,17 @@ LIST_UNIX_70
694696 drwxr-x--- 3 root root 4096 2011-12-06 23:39 ..
695697 -rw-r----- 1 root root 251 2011-12-06 23:39 .hoge
696698
699+// uClinux
700+*LIST_UNIX_17
701+ 0 1 2 3 4 5
702+ -------------------------------------------------------
703+ -rw-r--r-- 1 0 0 100 services
704+ lrwxrwxrwx 1 0 0 20 resolv.conf -> /var/run/resolv.conf
705+ drwxr-sr-x 1 0 0 0 rc.d
706+ -rw-r--r-- 1 0 0 290 rc
707+ -rw-r--r-- 1 0 0 34 passwd
708+ lrwxrwxrwx 1 0 0 18 inittab -> ../var/tmp/inittab
709+
697710 *LIST_TANDEM
698711 0 1 2 3 4 5 6
699712 ---------------------------------------------------------------
--- a/filelist.c
+++ b/filelist.c
@@ -3653,6 +3653,13 @@ static int AnalizeFileInfo(char *Str)
36533653
36543654 if((Ret != LIST_UNKNOWN) && (Flag1 == YES))
36553655 Ret |= LIST_MELCOM;
3656+
3657+ // uClinux
3658+ if((Ret == LIST_UNKNOWN) &&
3659+ (FindField(Str, Tmp, 5+Add1, NO) == FFFTP_SUCCESS))
3660+ {
3661+ Ret = LIST_UNIX_17;
3662+ }
36563663 }
36573664 }
36583665
@@ -5143,6 +5150,8 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
51435150 // case LIST_MELCOM :
51445151 // linux-ftpd
51455152 case LIST_UNIX_16 :
5153+ // uClinux
5154+ case LIST_UNIX_17 :
51465155 default:
51475156 /* offsはサイズの位置, offs=0はカラム4 */
51485157 offs = 0;
@@ -5198,6 +5207,9 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
51985207 (ListType == LIST_UNIX_73) ||
51995208 (ListType == LIST_UNIX_16))
52005209 offs2 = -1;
5210+ // uClinux
5211+ if(ListType == LIST_UNIX_17)
5212+ offs2 = -3;
52015213
52025214 /* offs3はオーナ名の位置 */
52035215 offs3 = 0;
@@ -5228,6 +5240,9 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
52285240 (ListType == LIST_UNIX_74) ||
52295241 (ListType == LIST_UNIX_75))
52305242 Flag2 = 1;
5243+ // uClinux
5244+ if(ListType == LIST_UNIX_17)
5245+ Flag2 = -1;
52315246
52325247 *InfoExist |= (FINFO_DATE | FINFO_SIZE | FINFO_ATTR);
52335248
@@ -5325,6 +5340,11 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
53255340 }
53265341 }
53275342 }
5343+ // uClinux
5344+ else if(Flag2 == -1)
5345+ {
5346+ *InfoExist &= ~(FINFO_DATE | FINFO_TIME);
5347+ }
53285348 else
53295349 {
53305350 /* LIST_UNIX_?4, LIST_UNIX_?5 の時 */