Súper Ofertas Komfort. publicidad be vap
[demime 1.01d removed an attachment of type image/jpeg which had a name of tcreamiento.jpg] [demime 1.01d removed an attachment of type image/jpeg which had a name of cgreciano.jpg] [demime 1.01d removed an attachment of type image/jpeg which had a name of taguajinoso.jpg] [demime 1.01d removed an attachment of type image/jpeg which had a name of dfrescachona.jpg]
Re: uvideo: kill a quirk, fix frame sizes
On Sun, Mar 27, 2011 at 9:26 PM, Jacob Meuser jake...@sdf.lonestar.org wrote: dcoppa@ noticed that his camera still didn't work with ffmpeg after the latest uvideo changes. the problem was that the device reported a ridiculously large maximum frame size, and then malloc(9) failed because there wasn't enough free memory to allocate the frame buffer. this is similar to a problem with other cameras, and is why uvideo(4) has the UVIDEO_FLAG_FIX_MAX_VIDEO_FRAME_SIZE quirk. For the archives, mine is a: uvideo0 at uhub0 port 5 configuration 1 interface 0 Acer BisonCam, NB Pro rev 2.00/0.02 addr 2 And it's the integrated webcam of my MSI Wind U100 netbook... Cheers! David
Resending: duid support for ntfs
Hi, adapted from msdosfs code + fixed one typo in debug printing. Tested on amd64. -- Antti Harri Index: sys/ntfs/ntfs_vfsops.c === RCS file: /OpenBSD/src/sys/ntfs/ntfs_vfsops.c,v retrieving revision 1.24 diff -u -r1.24 ntfs_vfsops.c --- sys/ntfs/ntfs_vfsops.c 21 Dec 2010 20:14:43 - 1.24 +++ sys/ntfs/ntfs_vfsops.c 9 Mar 2011 19:15:01 - @@ -37,6 +37,7 @@ #include sys/vnode.h #include sys/mount.h #include sys/buf.h +#include sys/disk.h #include sys/fcntl.h #include sys/malloc.h #include sys/systm.h @@ -167,6 +168,7 @@ struct ntfs_args args; size_t size; mode_t amode; + char *fspec = NULL; /* *** @@ -204,7 +206,13 @@ * Not an update, or updating the name: look up the name * and verify that it refers to a sensible block device. */ - NDINIT(ndp, LOOKUP, FOLLOW, UIO_USERSPACE, args.fspec, p); + fspec = malloc(MNAMELEN, M_MOUNT, M_WAITOK); + err = copyinstr(args.fspec, fspec, MNAMELEN - 1, size); + if (err) + goto error_1; + disk_map(fspec, fspec, MNAMELEN, DM_OPENBLCK); + + NDINIT(ndp, LOOKUP, FOLLOW, UIO_SYSSPACE, fspec, p); err = namei(ndp); if (err) { /* can't get devvp!*/ @@ -273,8 +281,8 @@ (void) copyinstr(path, mp-mnt_stat.f_mntonname, MNAMELEN - 1, size); bzero(mp-mnt_stat.f_mntonname + size, MNAMELEN - size); - (void) copyinstr(args.fspec, mp-mnt_stat.f_mntfromname, - MNAMELEN - 1, size); + + size = strlcpy(mp-mnt_stat.f_mntfromname, fspec, MNAMELEN - 1); bzero(mp-mnt_stat.f_mntfromname + size, MNAMELEN - size); bcopy(args, mp-mnt_stat.mount_info.ntfs_args, sizeof(args)); if ( !err) { @@ -304,6 +312,9 @@ error_1: /* no state to back out*/ success: + if (fspec) + free(fspec, M_MOUNT); + return(err); } @@ -572,7 +583,7 @@ /* free the toupper table, if this has been last mounted ntfs volume */ ntfs_toupper_unuse(p); - dprintf((ntfs_umount: freeing memory...\n)); + dprintf((ntfs_unmount: freeing memory...\n)); mp-mnt_data = NULL; mp-mnt_flag = ~MNT_LOCAL; free(ntmp-ntm_ad, M_NTFSMNT);
IPv6 autoconfiguration and icmp6 redirects
Hi, CVSROOT:/cvs Module name:src Changes by: bl...@cvs.openbsd.org 2011/03/22 18:59:49 Modified files: usr.sbin/rtsold: if.c rtsold.8 rtsold.c rtsold.h Log message: Print a warning when rtsol or rtsold are used to do IPv6 autoconfiguration but accepting redirects is turned off. If the -F switch is given, set sysctl net.inet6.icmp6.rediraccept to 1 instead. ok claudio@ deraadt@ sthen@ May I ask why this is needed? I've run IPv6 autoconfigurations on my machines with net.inet6.icmp6.rediraccept=0 for years without visible trouble. I may be missing knowledge of parts of the protocol and the manual page doesn't help. Thanks. -- Matthieu Herrb
Re: ksh completion
On Thu, Mar 24, 2011 at 15:48:56 +0300, Alexander Polakov wrote: And just for the archives, a patch that really works as advertised (and using it for some time I feel like it *is* a good idea). One thing I've noticed: $ touch 'thing [another thing aaa' $ touch 'thing [another thing bbb' $ ls thingTAB $ ls thing\ \[another\ thing\ \\ now hitting 'a' or 'b' and then TAB does nothing. It does not complete further. However without the '[' character in the filename, it does. Daniel -- LIVAI Daniel PGP key ID = 0x83B63A8F Key fingerprint = DBEC C66B A47A DFA2 792D 650C C69B BE4C 83B6 3A8F
Re: patch for pppoe(8), ppp(8) - openbsd 4.8
On 2011/03/28 20:11, Ben Gould wrote: Hi, A bug fix, performance improvement and a new feature for pppoe(8); and a performance improvement for ppp(8). Hi Ben, please could you resend with diff -u... thanks! It would be good to report a bug for the pppoe(4) panics you see too if it's possible, I've been using pppoe(4) on UK ADSL for quite some time (v4 with aaisp, demon, zen; v4+v6 with bogons) without trouble, including on some quite heavily-loaded lines.
Re: patch for pppoe(8), ppp(8) - openbsd 4.8
Resend with unified diffs, sorry... On 28 March 2011 20:11, Ben Gould ben.go...@gmail.com wrote: Hi, A bug fix, performance improvement and a new feature for pppoe(8); and a performance improvement for ppp(8). pppoe(8): - Under load my low power atom-based router kept hitting the usleep(10); case in pppoe which seemed to throw LCP echos off causing line drops, this is now gone and the line doesn't drop. - select() replaced for kqueue()/kevent() calls in pppoe's client loop. - RFC 4638 support added to pppoe's client mode for negotiating 1500 byte mtu with the server. ppp(8) - A very quick and dirty drop-in kqueue()/kevent() replacement for select() in the main loop. B It works for me, works well with the above pppoe mods, you'll flame. B Suggestions would be welcome. B Can anyone test this with dialup? Some background for these changes: B Faster broadband got rolled out here; all was working on ADSL 2+ (with random but tolerable line drops during bittorrent downloads). B Upgraded to VDSL (here in the UK BT are rolling out fibre to a roadside cabinet...) which is provided as a PPPoE mode. B Line now drops were happening under normal usage so I investigated... B Once all that was fixed I thought I'd add support for the larger MTU. B I probably wouldn't have needed to rewrite the select() calls as kqueue()/kevent() if I had a faster computer acting as a router. B pppoe(4) seems to cause panics and wasn't setting up IPv6 properly for me - sorry I've not investigated that further. Diffs and dmesg follow. -- ben diff -upr ppp/ppp/main.c ppp.kqueue/ppp/main.c --- ppp/ppp/main.c Wed Nov 12 16:01:08 2008 +++ ppp.kqueue/ppp/main.c Mon Mar 28 19:14:59 2011 @@ -48,6 +48,8 @@ #include termios.h #include unistd.h #include sys/stat.h +#include sys/types.h +#include sys/event.h #ifndef NONAT #ifdef LOCALNAT @@ -533,27 +535,47 @@ main(int argc, char **argv) static void DoLoop(struct bundle *bundle) { - fd_set *rfds, *wfds, *efds; - int i, nfds, nothing_done; + int kq; + struct kevent *changelist, *pevent; + fd_set *rfds, *wfds, *efds; + int i, nfds, nfds_done, nothing_done, x, nchanges, maxnchanges, neret; - if ((rfds = mkfdset()) == NULL) { -log_Printf(LogERROR, DoLoop: Cannot create fd_set\n); -return; - } + nfds_done = 0; + nchanges = 0; + maxnchanges = getdtablesize(); + changelist = malloc(maxnchanges * sizeof(struct kevent)); - if ((wfds = mkfdset()) == NULL) { -log_Printf(LogERROR, DoLoop: Cannot create fd_set\n); -free(rfds); -return; - } + kq = kqueue(); + if (kq 0) { + log_Printf(LogERROR, DoLoop: Cannot create kqueue\n); + free(changelist); + return; + } - if ((efds = mkfdset()) == NULL) { -log_Printf(LogERROR, DoLoop: Cannot create fd_set\n); -free(rfds); -free(wfds); -return; - } + if ((rfds = mkfdset()) == NULL) { + log_Printf(LogERROR, DoLoop: Cannot create fd_set\n); + free(changelist); + close(kq); + return; + } + if ((wfds = mkfdset()) == NULL) { + log_Printf(LogERROR, DoLoop: Cannot create fd_set\n); + free(changelist); + close(kq); + free(rfds); + return; + } + + if ((efds = mkfdset()) == NULL) { + log_Printf(LogERROR, DoLoop: Cannot create fd_set\n); + free(changelist); + close(kq); + free(rfds); + free(wfds); + return; + } + for (; !bundle_IsDead(bundle); bundle_CleanDatalinks(bundle)) { nfds = 0; zerofdset(rfds); @@ -571,6 +593,28 @@ DoLoop(struct bundle *bundle) /* Don't select - we'll be here forever */ break; + /* Quick and dirty way to convert a complicated use of +* select into a quicker call to kevent(2) +*/ + nfds_done = nfds nfds_done ? nfds : nfds_done; + for (x = 0; x nfds; ++x) { + int r = 0, w = 0; + if (FD_ISSET(x, rfds)) { + EV_SET(changelist + nchanges, x, EVFILT_READ, EV_ADD|EV_ONESHOT, 0, 0, 0); + ++nchanges; + r = 1; + } + if (FD_ISSET(x, wfds)) { + EV_SET(changelist + nchanges, x, EVFILT_WRITE, EV_ADD|EV_ONESHOT, 0, 0, 0); + ++nchanges; + w = 1; + } + if (!r !w FD_ISSET(x, efds)) { + EV_SET(changelist + nchanges, x, EVFILT_READ, EV_ADD|EV_ONESHOT, 0, 0, 0); + ++nchanges; + } + } + /* * It's possible that we've had a signal since we last checked. If * we don't check again before calling select(), we may end up stuck @@ -582,48 +626,36 @@ DoLoop(struct bundle