Marketing - 654
PUBLICIDAD POR EMAIL- SOLUCION DEFINITIVA Enviamos la publicidad de tu negocio a miles de potenciales clientes Aumenta tus ganancias en pocos minutos!!! Miles de personas recibirán una propuesta tuya, y la posibilidad de venta será mucho mas fluida para tu empresa. 100.000 envíos x solo 500 pesos Si solo el 1 % esta interesado, es un negocio brillante. Los envíos solo son para rubros generales Simple, Confiable y Efectivo, es el envío de Información a Potenciales clientes y es la herramienta mas utilizada para hacer Publicidad por Internet. También podes enviar de 50 a 100 mil envíos diarios Con nuestro soft de envíos masivos de alta velocidad Y desde tu PC, así tenes el control de todo lo enviado. confirmaciones de lectura en tiempo real Y si ningún tipo de pagos posteriores. Contamos con las mejores Bases de Email del Mercado Y si estas en Capital podemos instalarte este Soft. de alta velocidad y capacitarte sin ningún costo adicional. Si estas fuera de capital te enviamos todo por Internet, con la configuración apropiada para que no tengas problemas. Y te damos soporte telefónico, Skype y acceso remoto. Mas una base de 100.000 emails Reales para enviar con nuestro sistema Y lo mejor es que solo vas a invertir 500 pesos Por única vez y usarlo de por vida, nadie puede superar esta oferta tan conveniente para vos, Podes Abonarlas con Tarjeta de Credito... y serás atendido con mucha seriedad y respeto Porque tenemos muy en claro que de tu éxito, depende el nuestro (54+11) 4040-7335 / ID: 154*6151 SOLICITA MAS INFORMACIÓN POR EMAIL A: sumejormarketing-enminutos @yahoo.com NO RESPONDAS ESTE MAIL NO SERÁ LEÍDO To unsubscribe click here 1637
Bayan Azdırıcı Parfüm
FEROLLE AÞK PARFÜMÜ BAYAN AZDIRICI AFRODÝZYAK PARFÜM BAYAN AZDIRICI PARFÜM CÝNSEL ÝSTEK ARTTIRICI AFRODÝZYAKLI PARFÜM Ferolle Aþk Parfümü`nü ; Elde Etmek Ýstediðiniz Bayanýn Yanýna Giderken Boynunuza Ve Bileklerinize 2 Fýs Sýkmanýz Yeterlidir. Ferolle Afrodizyak Parfümün Kokusunu Duyan Bayanda Kukuyu Sýkmýþ Olan Kiþiye Karþý Aþýrý Cinsel Ýstek Ve Boþalma Ýsteði Oluþur. Artýk Sizede Onu Cinsel Olarak Tatmin Etmek Kalýyor ! Bayanlarýn Dikkatini Çekmek Ýstediðiniz Herhangi Bir Zamanda, Gündelik Yaþamda, Okulda Veya Sosyal Aktivitelerde Kullanmanýzý Öneririz. Gün boyu kalýcý etkiye sahip çok hoþ kokusu vardýr. Ferolle Feromon Aþk Parfümü Ýle , Hayellerinizi Süsleyen Bayanlar 15 Dakika Ýçinde Kollarýnýzýn Arasýnda Olabilir ! Ýlk sýktýðýnýz anda önce kendinize dahi aþýk olabilirsiniz! Bu koku sizde olduðu sürece siz bir kadýn için "MUHTEÞEM OLABÝLÝRSÝNÝZ" Unutmayýn, Herþey Unutulur Ama Kokunuz Asla Unutulmaz !!! Kokunun Býraktýðý Etkiyi Bakýþlardaki Farklýlýklardan Kendiniz Keþfedeceksiniz... Ferolle Aþk Parfümünün Etkileri Nedir ? 1 - Hiç Olmadýðý Kadar Ýlgili Bakýþlar ve Karþý Cins Ýle Göz Temasý 2 - Karþý Cins Üzerinde Çok Sýk Yakýnlaþma Arzusu 3 - Etrafýnýzdakiler Üzerinde Huzur ve Güven Verici Etki 4 - Çevrenizde Olaðan Üstü Düzeyde Artýþ Gösteren Saygýnlýk. 5 - Androjen Hormonlarýnýn Artýþý Sonucunda Maximum Çekicilik 6 - Kullanan Kiþide Maksimum Özgüven 7 - Karþý Cinsden Alýnan Pozitif Cevap Ferolle ( Feromon Aþk Parfümü ) Sizi Sonuca Ulaþtýrýr ! FEROLLE AFRODÝZYAKLI AZDIRICI PARFÜM HAKKINDA DETAYLI BÝLGÝ ÝÇÝN LÜTFEN TIKLAYINIZ. Ferolle Aþk Parfümü Þimdi Hediyeli, Ayrýca Ücretsiz Kargo Ýle Kapýnýza Kadar Teslim Ediliyor ! - --- * Monalisa reklam ajansý, kaliteli ve orjinal ürünlerin ücretsiz reklamýný yapmaktadýr. * Bu e-postayý gönderen blue drop firmasý deðildir. Monalisa reklam ajansýdýr. * Bu e-postayý yanýtlamayýnýz. * Bu e-posta ( Kurumsal Müþteri ) listemize kayýtlý olduðunuz için gönderilmiþtir. * Bu e-postanýn size isteðiniz dýþýnda gönderildiðini düþünüyorsanýz, * E-posta listesinden çýkmak için ab...@daraltma.com adresine mail atabilirsiniz. - ---
possible performance gain for mpi(4)
ive been beating my head against why mpi is slow on some machines and not others, and i think this may be why. issuing a command to the chip is done by posting its address to a register. in my code this was done by doing a write to the register and then using a barrier immediately after. i think the barrier causes the cpu to wait till it knows the memory is flushed to the register, when in reality we dont care when it happens, we should go do other more important things. ive only done basic testing so far, but i am hopeful. Index: mpi.c === RCS file: /cvs/src/sys/dev/ic/mpi.c,v retrieving revision 1.175 diff -u -p -r1.175 mpi.c --- mpi.c 16 Jan 2012 10:55:46 - 1.175 +++ mpi.c 12 Aug 2012 03:17:49 - @@ -1198,7 +1198,8 @@ mpi_start(struct mpi_softc *sc, struct m BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); ccb->ccb_state = MPI_CCB_QUEUED; - mpi_write(sc, MPI_REQ_QUEUE, ccb->ccb_cmd_dva); + bus_space_write_4(sc->sc_iot, sc->sc_ioh, + MPI_REQ_QUEUE, ccb->ccb_cmd_dva); } int
Re: pdksh wrong strips quotes in shell substs
On Sun, 12 Aug 2012, Alexander Polakov wrote: > Nobody cares, so here's my attempt. I haven't run it though a > world/ports build because of slow hardware on my hands right now. > > Index: lex.c > === > RCS file: /cvs/src/bin/ksh/lex.c,v > retrieving revision 1.45 > diff -u -r1.45 lex.c > --- lex.c 9 Mar 2011 09:30:39 - 1.45 > +++ lex.c 11 Aug 2012 20:18:15 - > @@ -271,6 +271,8 @@ > break; > case '\'': > *wp++ = OQUOTE; > + if (state == SBRACE) > + *wp++ = CHAR, *wp++ = c; > ignore_backslash_newline++; > PUSH_STATE(SSQUOTE); > break; > @@ -420,6 +422,8 @@ > if (c == '\'') { > POP_STATE(); > *wp++ = CQUOTE; > + if (state == SBRACE) > + *wp++ = CHAR, *wp++ = c; > ignore_backslash_newline--; > } else > *wp++ = QCHAR, *wp++ = c; Unfortunately, that diff breaks the current, correct handling of single-quotes inside ${} that is *not* inside double-quotes. This: foo=1; echo ${foo:+'blah $foo'} should output blah $foo (Note the two spaces between 'blah' and '$foo' in both input and output) Below is an expansion of your diff for tests/unclass2.t to cover the cases discussed in this thread plus a couple others. As for how to get the fix to cover all those cases: the heredoc case can be handled by changing the added test to if ((cf & HEREDOC) || state == SBRACE) ...but it needs to be something like if ((cf & HEREDOC) || (state == SBRACE && is_in_double_quotes)) with "is_in_double_quotes" some magic to differentiate between the "${foo+'bar'}" and ${foo+'bar'} cases. That presumably involves walking up the statep list, but that has to stop when it hits a wrapping command-expansion. For example, the third new test in the diff below: echo "$( echo ${foo:+'blah $foo'})" that should output blah $foo Philip Index: tests/unclass2.t === RCS file: /cvs/src/bin/ksh/tests/unclass2.t,v retrieving revision 1.2 diff -u -p -r1.2 unclass2.t --- tests/unclass2.t25 Jun 1998 19:02:43 - 1.2 +++ tests/unclass2.t12 Aug 2012 01:58:01 - @@ -161,3 +161,55 @@ expected-stderr: ! XX --- +name: single-quotes-in-braces +description: + Check that single quotes inside unquoted {} are treated as quotes +stdin: + foo=1 + echo ${foo:+'blah $foo'} +expected-stdout: + blah $foo +--- + +name: single-quotes-in-quoted-braces +description: + Check that single quotes inside quoted {} are treated as normal char +stdin: + foo=1 + echo "${foo:+'blah $foo'}" +expected-stdout: + 'blah 1' +--- + +name: single-quotes-in-braces-nested +description: + Check that single quotes inside unquoted {} are treated as quotes, + even if that's inside a double-quoted command expansion +stdin: + foo=1 + echo "$( echo ${foo:+'blah $foo'})" +expected-stdout: + blah $foo +--- + +name: single-quotes-in-brace-pattern +description: + Check that single quotes inside {} pattern are treated as quotes +stdin: + foo=1234 + echo ${foo%'2'*} "${foo%'2'*}" ${foo%2'*'} "${foo%2'*'}" +expected-stdout: + 1 1 1234 1234 +--- + +name: single-quotes-in-heredoc-braces +description: + Check that single quotes inside {} in heredoc are treated as normal char +stdin: + foo=1 + cat <
Re: Reduce IPI traffic from signals
Please people, test this diff, we need reports from all architectures if possible. We always hear how much users want to help and so on, so please, test this diff. On Mon, Jul 23, 2012 at 08:45:17PM +0400, Alexander Polakov wrote: > This diff reduces IPI traffic for a case when process A is sending > a lot of signals to process B running on a different CPU. userret() > delivers all process signals at once, so there is no need to send > an interrupt for every signal. > > The problem was noticed by rtorrent 0.9.2 users, which does exactly > this, which led to process/system hangs and slowness. > > Tested and known to help on amd64 by me and dcoppa@. > > Index: amd64/amd64/machdep.c > === > RCS file: /cvs/src/sys/arch/amd64/amd64/machdep.c,v > retrieving revision 1.155 > diff -u -r1.155 machdep.c > --- amd64/amd64/machdep.c 4 Jun 2012 15:19:47 - 1.155 > +++ amd64/amd64/machdep.c 23 Jul 2012 13:49:40 - > @@ -690,8 +690,10 @@ > void > signotify(struct proc *p) > { > - aston(p); > - cpu_unidle(p->p_cpu); > + if (!isastset(p)) { > + aston(p); > + cpu_unidle(p->p_cpu); > + } > } > > #ifdef MULTIPROCESSOR > Index: amd64/include/cpu.h > === > RCS file: /cvs/src/sys/arch/amd64/include/cpu.h,v > retrieving revision 1.73 > diff -u -r1.73 cpu.h > --- amd64/include/cpu.h 17 Apr 2012 16:02:33 - 1.73 > +++ amd64/include/cpu.h 23 Jul 2012 13:49:40 - > @@ -213,6 +213,7 @@ > #endif > > #define aston(p) ((p)->p_md.md_astpending = 1) > +#define isastset(p) ((p)->p_md.md_astpending == 1) > > #define curpcb curcpu()->ci_curpcb > > Index: hppa/hppa/machdep.c > === > RCS file: /cvs/src/sys/arch/hppa/hppa/machdep.c,v > retrieving revision 1.206 > diff -u -r1.206 machdep.c > --- hppa/hppa/machdep.c 21 Jun 2012 00:56:59 - 1.206 > +++ hppa/hppa/machdep.c 23 Jul 2012 13:49:40 - > @@ -1399,8 +1399,10 @@ > void > signotify(struct proc *p) > { > - setsoftast(p); > - cpu_unidle(p->p_cpu); > + if (!isastset(p)) { > + setsoftast(p); > + cpu_unidle(p->p_cpu); > + } > } > > /* > Index: hppa/include/intr.h > === > RCS file: /cvs/src/sys/arch/hppa/include/intr.h,v > retrieving revision 1.37 > diff -u -r1.37 intr.h > --- hppa/include/intr.h 14 Jan 2011 13:20:06 - 1.37 > +++ hppa/include/intr.h 23 Jul 2012 13:49:40 - > @@ -157,7 +157,8 @@ > int hppa_ipi_broadcast(u_long); > #endif > > -#define setsoftast(p) (p->p_md.md_astpending = 1) > +#define setsoftast(p) ((p)->p_md.md_astpending = 1) > +#define isastset(p) ((p)->p_md.md_astpending == 1) > > void *softintr_establish(int, void (*)(void *), void *); > void softintr_disestablish(void *); > Index: i386/i386/machdep.c > === > RCS file: /cvs/src/sys/arch/i386/i386/machdep.c,v > retrieving revision 1.510 > diff -u -r1.510 machdep.c > --- i386/i386/machdep.c 23 May 2012 08:23:43 - 1.510 > +++ i386/i386/machdep.c 23 Jul 2012 13:49:40 - > @@ -2420,8 +2420,10 @@ > void > signotify(struct proc *p) > { > - aston(p); > - cpu_unidle(p->p_cpu); > + if (!isastset(p)) { > + aston(p); > + cpu_unidle(p->p_cpu); > + } > } > > #ifdef MULTIPROCESSOR > Index: i386/include/cpu.h > === > RCS file: /cvs/src/sys/arch/i386/include/cpu.h,v > retrieving revision 1.122 > diff -u -r1.122 cpu.h > --- i386/include/cpu.h27 Mar 2012 06:44:01 - 1.122 > +++ i386/include/cpu.h23 Jul 2012 13:49:41 - > @@ -226,6 +226,7 @@ > #endif > > #define aston(p) ((p)->p_md.md_astpending = 1) > +#define isastset(p) ((p)->p_md.md_astpending == 1) > > #define curpcb curcpu()->ci_curpcb > > Index: m88k/include/cpu.h > === > RCS file: /cvs/src/sys/arch/m88k/include/cpu.h,v > retrieving revision 1.54 > diff -u -r1.54 cpu.h > --- m88k/include/cpu.h25 Oct 2011 18:38:06 - 1.54 > +++ m88k/include/cpu.h23 Jul 2012 13:49:41 - > @@ -256,6 +256,7 @@ > (((struct cpu_info *)(framep)->tf.tf_cpu)->ci_intrdepth > 1) > > #define aston(p)((p)->p_md.md_astpending = 1) > +#define isastset(p) ((p)->p_md.md_astpending == 1) > > /* > * This is used during profiling to integrate system time. > Index: m88k/m88k/m88k_machdep.c > === > RCS file: /cvs/src/sys/arch/m88k/m88k/m88k_machdep.c,v > retrieving revi
Re: pdksh wrong strips quotes in shell substs
* Philip Guenther [120810 00:45]: > On Thu, Aug 9, 2012 at 5:31 AM, Mark Kettenis wrote: > >> Date: Thu, 9 Aug 2012 11:30:13 +0200 > >> From: Landry Breuil > ... > >> in the context of https://bugzilla.mozilla.org/show_bug.cgi?id=781461 > >> i've stumbled upon the following issue: > >> (our pdksh) > >> > > $FOO=1 > >> $cat < >> > echo ${FOO:+'blah'aa} > >> > EOF > >> echo blahaa > >> > >> bash-4.2# FOO=1 > >> bash-4.2# cat < >> > echo ${FOO:+'blah'aa} > >> > EOF > >> echo 'blah'aa > >> > >> Apparently the ksh from solaris, hpux and debian don't strip the quotes > >> in that usecase, and none of the other shells do (bash, dash, zsh...) > >> > >> So maybe it can be considered as a bug in our pdksh.. > > > > I think it is. POSIX says in 2.6.2 Parameter Expansion that: > > > > "...word shall be subjected to tilde expansion, parameter expansion, > > command substitution, and arithmetic expansion." > > > > which suggests that quote removal isn't supposed to happen. > > I agree. The bug applies to the simple double-quoted case too: > > $ foo=1 > $ echo "${foo:+'blah'}" > blah > $ > > The correct output there should include the single-quotes, ala: > 'blah' Hi. Nobody cares, so here's my attempt. I haven't run it though a world/ports build because of slow hardware on my hands right now. Index: lex.c === RCS file: /cvs/src/bin/ksh/lex.c,v retrieving revision 1.45 diff -u -r1.45 lex.c --- lex.c 9 Mar 2011 09:30:39 - 1.45 +++ lex.c 11 Aug 2012 20:18:15 - @@ -271,6 +271,8 @@ break; case '\'': *wp++ = OQUOTE; + if (state == SBRACE) + *wp++ = CHAR, *wp++ = c; ignore_backslash_newline++; PUSH_STATE(SSQUOTE); break; @@ -420,6 +422,8 @@ if (c == '\'') { POP_STATE(); *wp++ = CQUOTE; + if (state == SBRACE) + *wp++ = CHAR, *wp++ = c; ignore_backslash_newline--; } else *wp++ = QCHAR, *wp++ = c; Index: tests/unclass2.t === RCS file: /cvs/src/bin/ksh/tests/unclass2.t,v retrieving revision 1.2 diff -u -r1.2 unclass2.t --- tests/unclass2.t25 Jun 1998 19:02:43 - 1.2 +++ tests/unclass2.t11 Aug 2012 20:18:19 - @@ -161,3 +161,12 @@ XX --- +name: single quotes in braces +description: + Check that single quotes inside {} are not lost +stdin: + foo=1 + echo "${foo:+'blah'}" +expected-stdout: + 'blah' +---
Re: http "anchor" fix [Was: Re: (2) HTTP basic authentication for ftp(1) (RFC 2617)]
On Tue, Aug 07, 2012 at 11:50:26AM -0400, Eric P. Mangold wrote: > Sorry for the top-post > > I was wondering if some of you (active) 'ftp' maintainers could evaluate my > patch below. > > I posted this to the list ages ago, and tried following up with some former > committers on the ftp code, but for whatever reason I never received any > communication at all. > > It is a very simple patch, if someone could review it, and let me know if > this is OK or not. > > I would apprciate it. > > original message follows... > > Hi, > > I was trying to use the 'ftp' program to retrieve the following URL: > > https://pypi.python.org/packages/source/p/pip/pip-1.0.2.tar.gz#md5=47ec6ff3f6d962696fe08d4c8264ad49 > > Which fails because it considers the fragment as part of the path, and > so the server returns 404. These type of links are quite common these > days and so it would be nice if 'ftp' would handle them. > > This is my first patch to OpenBSD, so please let me know if there is > anyhthing else I can do to get this feature implemented. The patch is > very simple, and I think, correct, as '#' is an "unsafe" character, and > must always be URL-encoded if it is to appear literally in a URL and > not be interpreted as the start of a fragment identifier. > I would prefer this to be done on the path processing block, if possible. Just make sure you test the scheme for http/https, sorry for slacking on the revision. Could you give it a try ? if (isfileurl) { path = host; } else { path = strchr(host, '/'); /* Find path */ if (EMPTYSTRING(path)) { if (outfile) { /* No slash, but */ path=strchr(host,'\0'); /* we have outfile. */ goto noslash; } if (isftpurl) goto noftpautologin; warnx("No `/' after host (use -o): %s", origline); goto cleanup_url_get; } *path++ = '\0'; > probably here if (EMPTYSTRING(path) && !outfile) { if (isftpurl) goto noftpautologin; warnx("No filename after host (use -o): %s", origline); goto cleanup_url_get; } } > Regards, > Eric P. Mangold > > Index: fetch.c > === > RCS file: /cvs/src/usr.bin/ftp/fetch.c,v > retrieving revision 1.103 > diff -u -r1.103 fetch.c > --- fetch.c 25 Aug 2010 20:32:37 - 1.103 > +++ fetch.c 29 Oct 2011 03:34:02 - > @@ -205,6 +205,11 @@ > if (newline == NULL) > errx(1, "Can't allocate memory to parse URL"); > if (strncasecmp(newline, HTTP_URL, sizeof(HTTP_URL) - 1) == 0) { > +/* Remove any trailing fragment identifier from the HTTP URL. > + * Fragments (HTTP anchors) are identified by a hash char > ('#'), > + * as per RFC 3986. */ > +newline = strsep(&newline, "#"); > + > host = newline + sizeof(HTTP_URL) - 1; > #ifndef SMALL > scheme = HTTP_URL; > @@ -221,6 +226,11 @@ > #ifndef SMALL > scheme = FILE_URL; > } else if (strncasecmp(newline, HTTPS_URL, sizeof(HTTPS_URL) - 1) == > 0) { > +/* Remove any trailing fragment identifier from the HTTPS > URL. > + * Fragments (HTTP anchors) are identified by a hash char > ('#'), > + * as per RFC 3986. */ > +newline = strsep(&newline, "#"); > + > host = newline + sizeof(HTTPS_URL) - 1; > ishttpsurl = 1; > scheme = HTTPS_URL; > > > On Mon, Aug 06, 2012 at 10:56:28PM +0200, Christiano F. Haesbaert wrote: > > Please ignore the other thread, it takes ages for me to open my sent box > > over gprs, so I'm opening a new one. > > > > > > Index: fetch.c > > === > > RCS file: /cvs/src/usr.bin/ftp/fetch.c,v > > retrieving revision 1.105 > > diff -d -u -p -r1.105 fetch.c > > --- fetch.c 30 Apr 2012 13:41:26 - 1.105 > > +++ fetch.c 6 Aug 2012 20:49:51 - > > @@ -177,7 +177,7 @@ url_get(const char *origline, const char > > { > > char pbuf[NI_MAXSERV], hbuf[NI_MAXHOST], *cp, *portnum, *path, ststr[4]; > > char *hosttail, *cause = "unknown", *newline, *host, *port, *buf = NULL; > > - char *epath, *redirurl, *loctail; > > + char *epath, *redirurl, *loctail, *h, *p; > > int error, i, isftpurl = 0, isfileurl = 0, isredirect = 0, rval = -1; > > struct addrinfo hints, *res0, *res, *ares = NULL; > > const char * volatile savefile; > > @@ -191,7 +191,7 @@ url_get(const cha
use setrtable() instead of setsockopt() in tcpbench.
Hi, mikeb spotted this, we're actually calling the setsockopt for IPV6 too, which always fails, this uses setrtable which is less code and doesn't complain on IPV6 socks. Can someone that uses rdomain test this please ? Index: tcpbench.c === RCS file: /cvs/src/usr.bin/tcpbench/tcpbench.c,v retrieving revision 1.36 diff -d -u -p -r1.36 tcpbench.c --- tcpbench.c 16 Jun 2012 17:18:11 - 1.36 +++ tcpbench.c 11 Aug 2012 17:06:15 - @@ -61,7 +61,6 @@ /* Our tcpbench globals */ struct { - u_int Vflag;/* rtableid */ int Sflag;/* Socket buffer size (tcp mode) */ u_int rflag;/* Report rate (ms) */ int sflag;/* True if server */ @@ -752,15 +751,6 @@ server_init(struct addrinfo *aitop, stru warn("socket"); continue; } - if (ptb->Vflag) { - if (setsockopt(sock, SOL_SOCKET, SO_RTABLE, - &ptb->Vflag, sizeof(ptb->Vflag)) == -1) { - if (errno == ENOPROTOOPT) - warn("set rtable"); - else - err(1, "setsockopt SO_RTABLE"); - } - } if (ptb->Tflag != -1 && ai->ai_family == AF_INET) { if (setsockopt(sock, IPPROTO_IP, IP_TOS, &ptb->Tflag, sizeof(ptb->Tflag))) @@ -890,15 +880,6 @@ client_init(struct addrinfo *aitop, int &ptb->Tflag, sizeof(ptb->Tflag))) err(1, "setsockopt IPV6_TCLASS"); } - if (ptb->Vflag) { - if (setsockopt(sock, SOL_SOCKET, SO_RTABLE, - &ptb->Vflag, sizeof(ptb->Vflag)) == -1) { - if (errno == ENOPROTOOPT) - warn("set rtable"); - else - err(1, "setsockopt SO_RTABLE"); - } - } if (ptb->Sflag) { if (setsockopt(sock, SOL_SOCKET, SO_SNDBUF, &ptb->Sflag, sizeof(ptb->Sflag)) == -1) @@ -1006,7 +987,7 @@ main(int argc, char **argv) extern int optind; extern char *optarg; struct timeval tv; - unsigned int secs; + unsigned int secs, rtable; char kerr[_POSIX2_LINE_MAX], *tmp; struct addrinfo *aitop, *aib, hints; @@ -1022,7 +1003,7 @@ main(int argc, char **argv) setlinebuf(stdout); ptb = &tcpbench; ptb->dummybuf_len = 0; - ptb->Sflag = ptb->sflag = ptb->vflag = ptb->Vflag = 0; + ptb->Sflag = ptb->sflag = ptb->vflag = 0; ptb->kvmh = NULL; ptb->kvars = NULL; ptb->rflag = DEFAULT_STATS_INTERVAL; @@ -1076,11 +1057,13 @@ main(int argc, char **argv) ptb->vflag++; break; case 'V': - ptb->Vflag = (unsigned int)strtonum(optarg, 0, + rtable = (unsigned int)strtonum(optarg, 0, RT_TABLEID_MAX, &errstr); if (errstr) errx(1, "rtable value is %s: %s", errstr, optarg); + if (setrtable(rtable) == -1) + err(1, "setrtable"); break; case 'n': nconn = strtonum(optarg, 0, 65535, &errstr);
Re: ftp mput recursiv upload diff for testing
On Mon, Jul 30, 2012 at 10:30:47AM +0200, Jan Klemkow wrote: > Hopefully the final version. Yes, I think this is OK now. If anybody else could have a look at it, I will commit it. bluhm > > Index: cmds.c > === > RCS file: /cvs/src/usr.bin/ftp/cmds.c,v > retrieving revision 1.70 > diff -u -p -r1.70 cmds.c > --- cmds.c5 May 2009 19:35:30 - 1.70 > +++ cmds.c30 Jul 2012 07:58:16 - > @@ -231,15 +231,32 @@ mput(int argc, char *argv[]) > extern int optind, optreset; > int ch, i, restartit = 0; > sig_t oldintr; > - char *cmd, *tp; > + char *cmd, *tp, *xargv[] = { argv[0], NULL, NULL }; > + const char *errstr; > + static int depth = 0, max_depth = 0; > > optind = optreset = 1; > > - while ((ch = getopt(argc, argv, "c")) != -1) { > + if (depth) > + depth++; > + > + while ((ch = getopt(argc, argv, "cd:r")) != -1) { > switch(ch) { > case 'c': > restartit = 1; > break; > + case 'd': > + max_depth = strtonum(optarg, 0, INT_MAX, &errstr); > + if (errstr != NULL) { > + fprintf(ttyout, "bad depth value, %s: %s\n", > + errstr, optarg); > + code = -1; > + return; > + } > + break; > + case 'r': > + depth = 1; > + break; > default: > goto usage; > } > @@ -247,7 +264,8 @@ mput(int argc, char *argv[]) > > if (argc - optind < 1 && !another(&argc, &argv, "local-files")) { > usage: > - fprintf(ttyout, "usage: %s [-c] local-files\n", argv[0]); > + fprintf(ttyout, "usage: %s [-cr] [-d depth] local-files\n", > + argv[0]); > code = -1; > return; > } > @@ -318,11 +336,13 @@ usage: > mflag = 0; > return; > } > + > for (i = 1; i < argc; i++) { > char **cpp; > glob_t gl; > int flags; > > + /* Copy files without word expansion */ > if (!doglob) { > if (mflag && confirm(argv[0], argv[i])) { > tp = (ntflag) ? dotrans(argv[i]) : argv[i]; > @@ -348,6 +368,7 @@ usage: > continue; > } > > + /* expanding file names */ > memset(&gl, 0, sizeof(gl)); > flags = GLOB_BRACE|GLOB_NOCHECK|GLOB_QUOTE|GLOB_TILDE; > if (glob(argv[i], flags, NULL, &gl) || gl.gl_pathc == 0) { > @@ -355,33 +376,89 @@ usage: > globfree(&gl); > continue; > } > + > + /* traverse all expanded file names */ > for (cpp = gl.gl_pathv; cpp && *cpp != NULL; cpp++) { > - if (mflag && confirm(argv[0], *cpp)) { > - tp = (ntflag) ? dotrans(*cpp) : *cpp; > - tp = (mapflag) ? domap(tp) : tp; > - if (restartit == 1) { > - off_t ret; > + struct stat filestat; > > - if (curtype != type) > - changetype(type, 0); > - ret = remotesize(tp, 0); > - restart_point = (ret < 0) ? 0 : ret; > - } > - cmd = restartit ? "APPE" : ((sunique) ? > - "STOU" : "STOR"); > - sendrequest(cmd, *cpp, tp, > - *cpp != tp || !interactive); > - restart_point = 0; > - if (!mflag && fromatty) { > - if (confirm(argv[0], NULL)) > - mflag = 1; > + if (!mflag) > + continue; > + if (stat(*cpp, &filestat) != 0) { > + warn("local: %s", *cpp); > + continue; > + } > + if (S_ISDIR(filestat.st_mode) && depth == max_depth) > + continue; > + if (!confirm(argv[0], *cpp)) > + continue; > + > + /* > + * If file is a directory then create a new one > + * at the remote machine. > + */ > + if (S_ISDIR(filestat.st_mode)) { > + xargv[1] = *cpp; > +
Re: UQ_BAD_HID
Quoting Stuart Henderson : On 2012/08/10 10:05, Vijay Sankar wrote: I tested one APC UPS I have here with apcupsd and it works well. If this information is of any use, please let me know and I can test it with other APC UPS'es we have here (ES 550 etc.) and report back. Thanks, is that with the APC entries in usb_quirks.c removed? You can check in dmesg that the UPS attaches to uhid(4) rather than ugen(4). Also, apcupsd.org documentation indicates that using apcupsd will result in loss of USB keyboards and mice on OpenBSD. I did not have such problems with my setup -- my USB keyboard and mouse works fine so far. This is pretty old information. Before the quirk was added (in 2007), it would have been necessary to disable the uhid(4) driver in kernel config to allow the UPS to attach to ugen(4) instead. But now in -current/5.2 it's possible to carry out certain operations from userland even though a device is attached to a driver other than ugen(4). Thanks very much. dmesg | grep APC ugen0 at uhub3 port 4 "APC Back-UPS ES 650 FW:818.w1.D USB FW:w1" rev 1.10/1.06 addr 5 I will remove the following { USB_VENDOR_APC, USB_PRODUCT_APC_UPS, ANY,{ UQ_BAD_HID }}, { USB_VENDOR_APC, USB_PRODUCT_APC_UPS5G, ANY,{ UQ_BAD_HID }}, and test it on a different system. Sorry about that. Vijay Vijay Sankar, M.Eng., P.Eng. ForeTell Technologies Limited vsan...@foretell.ca - This message was sent using ForeTell-POST 4.9
Re: UQ_BAD_HID
On 2012/08/10 10:05, Vijay Sankar wrote: > > I tested one APC UPS I have here with apcupsd and it works well. If > this information is of any use, please let me know and I can test it > with other APC UPS'es we have here (ES 550 etc.) and report back. Thanks, is that with the APC entries in usb_quirks.c removed? You can check in dmesg that the UPS attaches to uhid(4) rather than ugen(4). > Also, apcupsd.org documentation indicates that using apcupsd will > result in loss of USB keyboards and mice on OpenBSD. I did not have > such problems with my setup -- my USB keyboard and mouse works fine > so far. This is pretty old information. Before the quirk was added (in 2007), it would have been necessary to disable the uhid(4) driver in kernel config to allow the UPS to attach to ugen(4) instead. But now in -current/5.2 it's possible to carry out certain operations from userland even though a device is attached to a driver other than ugen(4).
UPDATE: xf86-input-mouse 1.8.1
Hi, This update xf86-input-mouse to the latest release 1.8.1. http://koba.devio.us/distfiles/xf86-input-mouse-1.8.1.diff Comments ? OK ? -- Alexandr Shadchin
UPDATE: xf86-input-keyboard 1.6.2
Hi, This update xf86-input-keyboard to the latest release 1.6.2. http://koba.devio.us/distfiles/xf86-input-keyboard-1.6.2.diff Comments ? OK ? -- Alexandr Shadchin