Re: [DNG] Any difference in apache between 64-bit and 32-bit packages?

2019-03-11 Thread Андрей via Dng
Приветствую.


В Mon, 11 Mar 2019 19:20:42 +0200, ты писал(а):

> > http://znatok0.ss/%D0%B8%D1%81%D0%BF/a
> > [client ::1:36960] AH01630: client denied by server
> > configuration: /0/паут/znatok.ss/исп/a, referer:
> > http://znatok0.ss/  
> 
> maybe in 32bit you have some extra .htaccess with blocking rules?
> is it the same website on both 64/32?

The .htaccess files are not used at all on both platforms. And that's
what's amazing that confiuration is the same! It is different web sites
and we can narrow the problem just to simple cgi dir. path: /исп/a,
that i can call directly from browser on both Apache configurations.
Actually, it is suficient to know that i'm correct in supposing that
there is no difference regarding cgi and 32/64-bit platforms. Now i
have to refer to apache forums, probably.


Андрей.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


[DNG] Trying out beowulf.

2019-03-11 Thread Hendrik Boom
On Thu, Mar 07, 2019 at 08:17:39PM -0500, Hendrik Boom wrote:
> On Thu, Mar 07, 2019 at 02:31:06PM +0100, KatolaZ wrote:
> > On Thu, Mar 07, 2019 at 08:13:01AM -0500, Hendrik Boom wrote:
> > 
> > [cut]
> > 
> > > 
> > > Is beowulf already in a state where it is generally useable for an 
> > > ordinary 
> > > user on a laptop?  Except maybe a few quirks like the one we're now 
> > > debugging?  If so I'll upgrade soon and look for problems.  I'd prefer 
> > > not 
> > > to have to downgrade or reinstall if my system becomes unusable.
> > >
> > 
> > Define "ordinary user on a laptop". I have been using beowulf since
> > about 8 months ago on my laptop, and haven't experience any major
> > breakage (but I should probably also definne "major breakage"
> > here). My impression is that beowulf is pretty usable, but I am not
> > running a DE so my experience does not cover session-related automagic
> > goodies.
> 
> That's good enough for me.  Thanks.
> 
> > 
> > It would be great if more people would actually move on beowulf as
> > soon as possible, so that we can identify as many glitches as possible
> > and put together a beta of beowulf.
> 
> I plan to upgrade this weekend.

Upgraded more or less uneventfully.  Now on beowulf, but I haven't rebooted 
yet, so am running on an old kernel.

I did aptitude update, and then, several times, aptitude upgrade.
Each upgrade seems to have done further things, and I'm not sure yet if
it has reached a fixed point.

Several packages have been left unconfigured: sendmail-bin, sendmail, 
and sensible-mda.

I generally don't use sendmail, since I read and write mail on another 
system.  I don't know what sensible-mda is.

I'm using LXQt; its appearence has changed (without me explicitly restarting 
it).  In particular, the clock that used to be on the bottom bar has 
disappeared.  But the space it occupied is still there and reacts when I 
click on it.

I will investigate when I'm awake.  It's bedtime.

> 
> -- hendrik
> ___
> Dng mailing list
> Dng@lists.dyne.org
> https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] Any difference in apache between 64-bit and 32-bit packages?

2019-03-11 Thread Rick Moen
Quoting  via Dng (dng@lists.dyne.org):

> Приветствую.

Здравствуйте.

> Is there any difference in apache configuration regarding cgi scripts
> exectution between 64-bit and 32-bit packages or its accessories? I
> suppose no. Yet, on absolutely same configuration of Apache: same
> config files, the common ones and per site, the list of enabled
> modules, on 64-bit platform cgi scripts are executed where on 32-bit
> platfoem i get
> 
> You don't have permission to access /иÑп/a on this server.
> Apache/2.4.25 (Debian) Server at znatok0.ss Port 80
> 
> in browser and
> 
> http://znatok0.ss/%D0%B8%D1%81%D0%BF/a
> [client ::1:36960] AH01630: client denied by server
> configuration: /0/паут/znatok.ss/исп/a, referer:
> http://znatok0.ss/
> 
> in apache's log.

I'm sure this is utterly maddening to experience, and offhand have no
candidate explanation for the same Apache version with all the same
configuration giving errors on one CPU architecture and not on another.

Nonetheless, some of the debugging tips and other suggestions on this
Stackoverflow pages concerning the 'AH01630: client denied by server
configuration' error may be useful.  In note in particular the
'LogLevel debug' one.

https://stackoverflow.com/questions/18392741/apache2-ah01630-client-denied-by-server-configuration#19588786

Удачи!

-- 
Cheers,You must rise or sink / You must conquer or win, 
Rick Moen  Or serve and lose. / Suffer or triumph, / Be anvil or hammer.
r...@linuxmafia.com 
McQ! (4x80)-- Johann Wolfgang von Goethe, Gesellige Lieder, Ein Anderes 
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Arnt Karlsen
On Mon, 11 Mar 2019 17:43:45 +0100, Didier wrote in message 
:

> Le 11/03/2019 à 17:22, Arnt Karlsen a écrit :
> > On Mon, 11 Mar 2019 15:47:57 +0100, Didier wrote in message
> > :
> >  
> >> Le 11/03/2019 à 15:32, Didier Kryn a écrit :  
> >>> The invocation syntax to watch machine-id is
> >>> 'fawatch /var/lib/machine-id'  
> >> Erratum:
> >>
> >> The invocation syntax to watch machine-id is 'fawatch
> >> /var/lib/dbus/machine-id'  
> > ..and 'fawatch /etc/machine-id' if watching both (with 2 separate
> > invocations)?
> >
> > ..or will it do 'fawatch /var/lib/dbus/machine-id /etc/machine-id'
> > in one process?
> >
> > ..and _should_ it watch all these ID files off one process, or,
> > off one invocation per ID file?
> > (Policy, rather than a tech question.)
> >
> >  
>      fawatch can only watch one file, for two reasons: the first is I 
> didn't think of watching more, and the second is that I don't know
> how to know which file was opened if there are more than one. But you
> can launch as many instances of the program as you want.

..ah ok, and I agree as a matter of policy.

>      When a process wants to open the watched file, it is suspended 
> until fawatch grants it the permission to proceed.
> 
>      Before granting permission, fawatch retrieves the pid of the 
> process, its command line and its owner - otherwise, very fast 
> applications (eg cat) may be finished before fawatch can retrieve
> these data.
> 
>      The command, process-id and owner are logged on stdout. Errors
> are reported on stderr. I would recommend to send error messages to
> the same output as the logs. eg 'fawatch /var/lib/dbus/machine-id 
>  >/var/log/machine-id.log 2>&1 &'  
> 
>          Didier

..hum, a .deb idea, maybe put a list of files to watch in 
/etc/defaults/fawatch , so /etc/rcS.d/S01fawatch can do 
e.g.: 'for F in $(cat /etc/defaults/fawatch) ;do fawatch \
$F >/var/log/machine-id.d/$F.log 2>&1 & ;done ' ?




-- 
..med vennlig hilsen = with Kind Regards from Arnt Karlsen
...with a number of polar bear hunters in his ancestry...
  Scenarios always come in sets of three: 
  best case, worst case, and just in case.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread KatolaZ
On Mon, Mar 11, 2019 at 07:16:13PM +0100, Didier Kryn wrote:
>     First list of applications reading machine-id.
> 
>     /usr/sbin/console-kit-daemon
>     /usr/bin/dbus-launch
>     /usr/local/waterfox/waterfox
> 
>     None of Palemoon, Firefox-ESR or Surf reads machine-id on my ASCII
> laptop. I compiled Palemoon on Jessie maybe two years ago, and I think I
> compiled Waterfox more recently on ASCII.

guys, anything using dbus will most probably (indirectly) access
/var/lib/dbus/machine-id at some point in time, since that file is
read when attempting to send a message via dbus. Please have a look at
dbus' code.

My2Cents

KatolaZ

-- 
[ ~.,_  Enzo Nicosia aka KatolaZ - Devuan -- Freaknet Medialab  ]  
[ "+.  katolaz [at] freaknet.org --- katolaz [at] yahoo.it  ]
[   @)   http://kalos.mine.nu ---  Devuan GNU + Linux User  ]
[ @@)  http://maths.qmul.ac.uk/~vnicosia --  GPG: 0B5F062F  ] 
[ (@@@)  Twitter: @KatolaZ - skype: katolaz -- github: KatolaZ  ]


signature.asc
Description: PGP signature
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Didier Kryn

    First list of applications reading machine-id.

    /usr/sbin/console-kit-daemon
    /usr/bin/dbus-launch
    /usr/local/waterfox/waterfox

    None of Palemoon, Firefox-ESR or Surf reads machine-id on my ASCII 
laptop. I compiled Palemoon on Jessie maybe two years ago, and I think I 
compiled Waterfox more recently on ASCII.


        Didier

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] Any difference in apache between 64-bit and 32-bit packages?

2019-03-11 Thread Dimitris via Dng
On 3/11/19 2:05 PM, Андрей via Dng wrote:
> http://znatok0.ss/%D0%B8%D1%81%D0%BF/a
> [client ::1:36960] AH01630: client denied by server
> configuration: /0/паут/znatok.ss/исп/a, referer:
> http://znatok0.ss/

maybe in 32bit you have some extra .htaccess with blocking rules?
is it the same website on both 64/32?



signature.asc
Description: OpenPGP digital signature
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Didier Kryn

Le 11/03/2019 à 17:22, Arnt Karlsen a écrit :

On Mon, 11 Mar 2019 15:47:57 +0100, Didier wrote in message
:


Le 11/03/2019 à 15:32, Didier Kryn a écrit :

The invocation syntax to watch machine-id is
'fawatch /var/lib/machine-id'

Erratum:

The invocation syntax to watch machine-id is 'fawatch
/var/lib/dbus/machine-id'

..and 'fawatch /etc/machine-id' if watching both (with 2 separate
invocations)?

..or will it do 'fawatch /var/lib/dbus/machine-id /etc/machine-id'
in one process?

..and _should_ it watch all these ID files off one process, or,
off one invocation per ID file?
(Policy, rather than a tech question.)


    fawatch can only watch one file, for two reasons: the first is I 
didn't think of watching more, and the second is that I don't know how 
to know which file was opened if there are more than one. But you can 
launch as many instances of the program as you want.


    When a process wants to open the watched file, it is suspended 
until fawatch grants it the permission to proceed.


    Before granting permission, fawatch retrieves the pid of the 
process, its command line and its owner - otherwise, very fast 
applications (eg cat) may be finished before fawatch can retrieve these 
data.


    The command, process-id and owner are logged on stdout. Errors are 
reported on stderr. I would recommend to send error messages to the same 
output as the logs. eg 'fawatch /var/lib/dbus/machine-id 
>/var/log/machine-id.log 2>&1 &'


        Didier


___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Arnt Karlsen
On Mon, 11 Mar 2019 15:47:57 +0100, Didier wrote in message 
:

> Le 11/03/2019 à 15:32, Didier Kryn a écrit :
> > The invocation syntax to watch machine-id is
> > 'fawatch /var/lib/machine-id'  
> 
> Erratum:
> 
> The invocation syntax to watch machine-id is 'fawatch 
> /var/lib/dbus/machine-id'

..and 'fawatch /etc/machine-id' if watching both (with 2 separate
invocations)?

..or will it do 'fawatch /var/lib/dbus/machine-id /etc/machine-id' 
in one process?  

..and _should_ it watch all these ID files off one process, or, 
off one invocation per ID file? 
(Policy, rather than a tech question.)


-- 
..med vennlig hilsen = with Kind Regards from Arnt Karlsen
...with a number of polar bear hunters in his ancestry...
  Scenarios always come in sets of three: 
  best case, worst case, and just in case.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Didier Kryn

Le 11/03/2019 à 15:51, KatolaZ a écrit :

On Mon, Mar 11, 2019 at 03:32:57PM +0100, Didier Kryn wrote:

    Please find in atttachment a quickly hacked C program which writes a
line on standard output everytime a process opens a given file.

    The invocation syntax to watch machine-id is 'fawatch
/var/lib/machine-id'


Hi Didier,

if you mean the dbus machine-id, then it's /var/lib/dbus/machine-id.


    Yes. And I found 2 bugs when running it in the background from 
/etc/rc.local. Here's the corrected version.


        Didier



#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

ssize_t readproc(pid_t pid, const char *fname, char *buf, size_t len);

int main(int argc, char **argv)
{
  static char buf[4096];
  static char cmdline[80], loginuid[80];
  static char *progname;
  struct fanotify_event_metadata  *fh;
  struct fanotify_response response;
  int fafd;
  const unsigned faflags = FAN_CLASS_PRE_CONTENT | FAN_CLOEXEC;
  /* If we don't specify FAN_CLASS_PRE_CONTENT, and FAN_OPEN_PERM, a very short
 process  may be finished before we can read its command line and owner.
 With these flags, it'll be held until we've sent the permisssion. */

  {
/* set progname to point to basename(argv[0]) */
int i;
for( i=strlen(argv[0])-1;   argv[0][i] != '/';i-- ) /* nop */;
if( argv[0][i] == '/' ) i++;
progname = argv[0] + i;
  }
  
  fafd = fanotify_init(faflags, O_RDONLY | O_CLOEXEC);
  if( fafd < 0 )
{
  fprintf( stderr, "%s: error returned by fanotify_init(): %s\n",
	   progname, strerror(errno) );
  return EXIT_FAILURE;
}

  if(  fanotify_mark(fafd, FAN_MARK_ADD, FAN_OPEN_PERM, AT_FDCWD, argv[1])  )
{
  if( errno == ENOENT )
	fprintf( stderr, "%s: %s: %s\n", progname, argv[1], strerror(errno) );
  else
	fprintf( stderr, "%s: error returned by fanotify_mark(): %s\n",
	   progname, strerror(errno) );
  return EXIT_FAILURE;
}

  /* loop on reading fanotify filedescriptor */
  while(1)
{
  size_t size;
  char *end, *c;
  size = read( fafd, buf, sizeof(buf) );
  if(size < 1)
	{
	  fprintf( stderr, "%s error reading fanotify filedescriptor: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}

  /* loop on decoding all events we have read */
  for( end=buf+size, fh=(struct fanotify_event_metadata *)(c=buf);
	   c < end;
	   c += fh->event_len, fh=(struct fanotify_event_metadata *)c )
	{
	  int n;
	  unsigned u;
	  uid_t uid;
	  /* check fanotify metadata version */
	  if(fh->vers != FANOTIFY_METADATA_VERSION)
	{
	  fprintf(stderr, "%s error: libc version of fanotify metadata"
		  " does not match kernel's version.\n", progname);
	  return EXIT_FAILURE;
	}
	  /* read command line from /proc */
	  if( readproc(fh->pid, "cmdline", cmdline, sizeof(cmdline)) < 0 )
	{
	  fprintf( stderr, "%s cannot read processe's cmdline: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}
	  /* read loginuid from /proc */
	  if( readproc(fh->pid, "loginuid", loginuid, sizeof(loginuid)) < 0 )
	{
	  fprintf( stderr, "%s cannot read processe's loginuid: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}
	  /* send permission */
	  response.fd = fh->fd;
	  response.response = FAN_ALLOW;
	  if( write(fafd, &response, sizeof(response)) != sizeof(response) )
	{
	  fprintf( stderr, "%s error writing fanotify permission: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}
	  close(fh->fd);

	  /* decode user id and print log message */
	  {
	struct passwd *pw;
	/* we can't assume uid_t matches the size expectation of %u.
	   Therefore we first decode the number into an unsigned and
	   let the compiler automatically perform type conversion */
	sscanf(loginuid, "%u", &u);
	uid = u;
	pw = getpwuid(uid);
	if(pw) printf( "%s open by \"%s\" (pid=%u, owner=\"%s\")\n",
			   argv[1], cmdline, fh->pid, pw->pw_name);
	else   printf( "%s open by \"%s\" (pid=%u, owner=%d)\n",
			   argv[1], cmdline, fh->pid, uid);
	  }
	}
  fflush(stdout);
}
}

ssize_t readproc(pid_t pid, const char *fname, char *buf, size_t len)
{
  int pfd, n;
  char procfn[256];

  sprintf(procfn, "/proc/%d/%s", pid, fname);
  pfd = open(procfn, O_RDONLY);
  if(pfd < 0) return -1;
  n = read( pfd, buf, len );
  if(n<0) return -1;
  buf[len] = '\0';
  close(pfd);
  return n;
}

___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] sans dbus/udev (was Re: new freedesktop "standard": /etc/machine-id)

2019-03-11 Thread Didier Kryn

Le 11/03/2019 à 16:48, k...@aspodata.se a écrit :

Didier:

Le 10/03/2019 à 11:22, k...@aspodata.se a écrit :

Since nowadays the kernel can provide devtmpfs, what is the role of
udev et al apart from handling usb devices ?

      1) Change owner, group and permissions because the kernel defaults
everything to root.root and (I guess) 0600

      2) Create and populate /dev/disk/by-*, which is sometimes usefull
on a desktop or laptop.

      3) Rename network devices (for people who want that)

      The first 2 items might be done by monitoring /dev with inotify.
This must be checked though because, in principle, inotify only reports
interactions with the VFS issued from userspace, which is why it doesn't
work on /sys and /proc. Inotify works fine when /dev and
/dev/disk/by-label are popluated by udev, but I didn't check with
devtmpfs. We would then resort to reading the netlink.

Isn't the above moot if you have a no usb devices and static dev:

1) changing owner/group/permissions are persistent, i.e. set it once
and be done with it
    SInce device files are created when the devices are discovered, you 
start from an empty /dev at boot; therefore you need to reassign 
owner/group/permission every time. If nothing ever changes, you can of 
course do it with a simple script invoked in rc.local.

2) isn't that mostly useful for  if you have lots of disks, say more than 5.
If you just have one or two, you don't need that.
Also that could be generated by a script which you run manually when
needed.


    I could imagine all these owner/group/permissions and symlinks 
might be managed by a generic script run at boot. But there are devices 
which you insert asynchronously, like USB memory sticks, SD cards or 
backup disks. It is very convenient, in a laptop/desktop to see the 
partition name and label pop up on the screen and only need a mouseclick 
to open it.


        Didier


___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] sans dbus/udev (was Re: new freedesktop "standard": /etc/machine-id)

2019-03-11 Thread karl
Didier:
> Le 10/03/2019 à 11:22, k...@aspodata.se a écrit :
> > Since nowadays the kernel can provide devtmpfs, what is the role of
> > udev et al apart from handling usb devices ?
> 
>      1) Change owner, group and permissions because the kernel defaults 
> everything to root.root and (I guess) 0600
> 
>      2) Create and populate /dev/disk/by-*, which is sometimes usefull 
> on a desktop or laptop.
> 
>      3) Rename network devices (for people who want that)
> 
>      The first 2 items might be done by monitoring /dev with inotify. 
> This must be checked though because, in principle, inotify only reports 
> interactions with the VFS issued from userspace, which is why it doesn't 
> work on /sys and /proc. Inotify works fine when /dev and 
> /dev/disk/by-label are popluated by udev, but I didn't check with 
> devtmpfs. We would then resort to reading the netlink.

Isn't the above moot if you have a no usb devices and static dev:

1) changing owner/group/permissions are persistent, i.e. set it once 
   and be done with it
2) isn't that mostly useful for  if you have lots of disks, say more than 5.
   If you just have one or two, you don't need that.
   Also that could be generated by a script which you run manually when 
   needed.
3) can't you do ifrename from rc.local

So unless you change things you don't need udev.

Unfortunately, many things have grown to dependent of udev which 
technically isn't.

Regards,
/Karl Hammar


___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread KatolaZ
On Mon, Mar 11, 2019 at 03:32:57PM +0100, Didier Kryn wrote:
>     Please find in atttachment a quickly hacked C program which writes a
> line on standard output everytime a process opens a given file.
> 
>     The invocation syntax to watch machine-id is 'fawatch
> /var/lib/machine-id'


Hi Didier,

if you mean the dbus machine-id, then it's /var/lib/dbus/machine-id.

My2Cents

KatolaZ

-- 
[ ~.,_  Enzo Nicosia aka KatolaZ - Devuan -- Freaknet Medialab  ]  
[ "+.  katolaz [at] freaknet.org --- katolaz [at] yahoo.it  ]
[   @)   http://kalos.mine.nu ---  Devuan GNU + Linux User  ]
[ @@)  http://maths.qmul.ac.uk/~vnicosia --  GPG: 0B5F062F  ] 
[ (@@@)  Twitter: @KatolaZ - skype: katolaz -- github: KatolaZ  ]


signature.asc
Description: PGP signature
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Didier Kryn

Le 11/03/2019 à 15:32, Didier Kryn a écrit :

The invocation syntax to watch machine-id is 'fawatch /var/lib/machine-id'


Erratum:

The invocation syntax to watch machine-id is 'fawatch 
/var/lib/dbus/machine-id'



___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] logging uses of machine-id

2019-03-11 Thread Didier Kryn
    Please find in atttachment a quickly hacked C program which writes 
a line on standard output everytime a process opens a given file.


    The invocation syntax to watch machine-id is 'fawatch 
/var/lib/machine-id'


    The program can be compiled with 'gcc -o fawatch fawatch.c'

    You need special permission to execute the program. Being root is 
the simplest way.


    I'm going to start it from rc.local, just to see ...

        Didier

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

ssize_t readproc(pid_t pid, const char *fname, char *buf, size_t len);

int main(int argc, char **argv)
{
  static char buf[4096];
  static char cmdline[80], loginuid[80];
  static char *progname;
  struct fanotify_event_metadata  *fh;
  struct fanotify_response response;
  int fafd;
  const unsigned faflags = FAN_CLASS_PRE_CONTENT | FAN_CLOEXEC;
  /* If we don't specify FAN_CLASS_PRE_CONTENT, and FAN_OPEN_PERM, a very short
 process  may be finished before we can read its command line and owner.
 With these flags, it'll be held until we've sent the permisssion. */

  {
/* set progname to point to basename(argv[0]) */
int i;
for( i=strlen(argv[0])-1;   argv[0][i] != '/';i-- ) /* nop */;
if( argv[0][i] == '/' ) i++;
progname = argv[0] + i;
  }
  
  fafd = fanotify_init(faflags, O_RDONLY | O_CLOEXEC);
  if( fafd < 0 )
{
  fprintf( stderr, "%s: error returned by fanotify_init(): %s\n",
	   progname, strerror(errno) );
  return EXIT_FAILURE;
}

  if(  fanotify_mark(fafd, FAN_MARK_ADD, FAN_OPEN_PERM, AT_FDCWD, argv[1])  )
{
  if( errno == ENOENT )
	fprintf( stderr, "%s: %s: %s\n", progname, argv[1], strerror(errno) );
  else
	fprintf( stderr, "%s: error returned by fanotify_mark(): %s\n",
	   progname, strerror(errno) );
  return EXIT_FAILURE;
}

  /* loop on reading fanotify filedescriptor */
  while(1)
{
  size_t size;
  char *end, *c;
  size = read( fafd, buf, sizeof(buf) );
  if(size < 1)
	{
	  fprintf( stderr, "%s error reading fanotify filedescriptor: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}

  /* loop on decoding all events we have read */
  for( end=buf+size, fh=(struct fanotify_event_metadata *)(c=buf);
	   c < end;
	   c += fh->event_len, fh=(struct fanotify_event_metadata *)c )
	{
	  int n;
	  uid_t uid;
	  /* check fanotify metadata version */
	  if(fh->vers != FANOTIFY_METADATA_VERSION)
	{
	  fprintf(stderr, "%s error: libc version of fanotify metadata"
		  " does not match kernel's version.\n", progname);
	  return EXIT_FAILURE;
	}
	  /* read command line from /proc */
	  if( readproc(fh->pid, "cmdline", cmdline, sizeof(cmdline)) < 0 )
	{
	  fprintf( stderr, "%s cannot read processe's cmdline: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}
	  /* read loginuid from /proc */
	  if( readproc(fh->pid, "loginuid", loginuid, sizeof(loginuid)) < 0 )
	{
	  fprintf( stderr, "%s cannot read processe's loginuid: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}
	  sscanf(loginuid, "%u", &uid);
	  
	  /* send permission */
	  response.fd = fh->fd;
	  response.response = FAN_ALLOW;
	  if( write(fafd, &response, sizeof(response)) != sizeof(response) )
	{
	  fprintf( stderr, "%s error writing fanotify permission: %s\n",
		   progname, strerror(errno) );
	  return EXIT_FAILURE;
	}
	  close(fh->fd);
	  {
	struct passwd *pw;
	pw = getpwuid(uid);
	if(pw) printf( "%s open by \"%s\" (pid=%u, owner=\"%s\")\n",
			   argv[1], cmdline, fh->pid, pw->pw_name);
	else  printf( "%s open by \"%s\" (pid=%u, owner=%d)\n",
			  argv[1], cmdline, fh->pid, uid);
	  }
	}
}
}

ssize_t readproc(pid_t pid, const char *fname, char *buf, size_t len)
{
  int pfd, n;
  char procfn[256];

  sprintf(procfn, "/proc/%d/%s", pid, fname);
  pfd = open(procfn, O_RDONLY);
  if(pfd < 0) return -1;
  n = read( pfd, buf, len );
  if(n<0) return -1;
  buf[len] = '\0';
  close(pfd);
  return n;
}
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


[DNG] Any difference in apache between 64-bit and 32-bit packages?

2019-03-11 Thread Андрей via Dng
Приветствую.


Is there any difference in apache configuration regarding cgi scripts
exectution between 64-bit and 32-bit packages or its accessories? I
suppose no. Yet, on absolutely same configuration of Apache: same
config files, the common ones and per site, the list of enabled
modules, on 64-bit platform cgi scripts are executed where on 32-bit
platfoem i get

You don't have permission to access /иÑп/a on this server.
Apache/2.4.25 (Debian) Server at znatok0.ss Port 80

in browser and

http://znatok0.ss/%D0%B8%D1%81%D0%BF/a
[client ::1:36960] AH01630: client denied by server
configuration: /0/паут/znatok.ss/исп/a, referer:
http://znatok0.ss/

in apache's log.


Андрей.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] /var/lib/dbus/machine-id -- new dbus version

2019-03-11 Thread Erik Christiansen
On 11.03.19 10:32, al3xu5 / dotcommon wrote:
> Unitil I will migrate to Beowulf, I guess adopt this proposed solution:
> 
> 1) symlink /etc/machine-id  to  /var/lib/dbus/machine-id
> 
> 2) run boot:  echo date +%s%N | md5sum | cut -c 1-32 > 
> /var/lib/dbus/machine-id
> 
> So please help me: what is the right way to run the previous command at
> each boot?

Without the echo, since:

$ echo date +%s%N
date +%s%N

so the md5sum is the same no matter when or how often it is run.
Sans echo does what is intended:

$ date +%s%N | md5sum | cut -c 1-32
2e0fa1728b9def222af420cf100c4447

$ date +%s%N | md5sum | cut -c 1-32
46f54d7ed30bcd3c74b73100597a5813

If you use sysv init, then I'd probably do it in /etc/rc.local, as in
the old days. Others may have more modern suggestions.

Erik
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] /var/lib/dbus/machine-id -- new dbus version

2019-03-11 Thread aitor_czr


On 11/3/19 11:13, KatolaZ wrote:

Just put your command in /etc/rc.local

HND

KatolaZ


So, my answer was the long answer :)


___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] /var/lib/dbus/machine-id -- new dbus version

2019-03-11 Thread KatolaZ
On Mon, Mar 11, 2019 at 10:32:57AM +0100, al3xu5 / dotcommon wrote:

[cut]

> 
> Hi
> 
> I am using ASCII, migrated from Jessie, migrated from Debian (maybe but
> I do not remember)...
> 
> Unitil I will migrate to Beowulf, I guess adopt this proposed solution:
> 
> 1) symlink /etc/machine-id  to  /var/lib/dbus/machine-id
> 
> 2) run boot:  echo date +%s%N | md5sum | cut -c 1-32 > 
> /var/lib/dbus/machine-id
> 
> So please help me: what is the right way to run the previous command at
> each boot?
> 

Just put your command in /etc/rc.local

HND

KatolaZ

-- 
[ ~.,_  Enzo Nicosia aka KatolaZ - Devuan -- Freaknet Medialab  ]  
[ "+.  katolaz [at] freaknet.org --- katolaz [at] yahoo.it  ]
[   @)   http://kalos.mine.nu ---  Devuan GNU + Linux User  ]
[ @@)  http://maths.qmul.ac.uk/~vnicosia --  GPG: 0B5F062F  ] 
[ (@@@)  Twitter: @KatolaZ - skype: katolaz -- github: KatolaZ  ]


signature.asc
Description: PGP signature
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


Re: [DNG] /var/lib/dbus/machine-id -- new dbus version

2019-03-11 Thread aitor_czr



Hi,

On 11/3/19 10:32, al3xu5 / dotcommon wrote:

Hi

I am using ASCII, migrated from Jessie, migrated from Debian (maybe but
I do not remember)...

Unitil I will migrate to Beowulf, I guess adopt this proposed solution:

1) symlink /etc/machine-id  to  /var/lib/dbus/machine-id

2) run boot:  echo date +%s%N | md5sum | cut -c 1-32 > /var/lib/dbus/machine-id

So please help me: what is the right way to run the previous command at
each boot?


The short answer, locate it in /etc/init.d and give permissions to it:

# chmod +x 

Re: [DNG] /var/lib/dbus/machine-id -- new dbus version

2019-03-11 Thread al3xu5 / dotcommon
Il giorno venerdì 08/03/2019 23:58:02 +0100
KatolaZ  ha scritto:

> Dear D1rs,
> 
> following the discussion about /var/lib/dbus/machine-id, you find a
> new version of dbus in unstable and beowulf. The new version is
> 1.12.12-1+devuan2, and it should hit pkgmaster in the next 10 minutes.
> 
> [cut]
> 
> Regarding /etc/machine-id: it looks like it is installed only by
> systemd, so any devuan installation which originally was a Debian
> might probably have it. ]...]My guess is that it should be possible to
> remove it altogether. If any application wants it (somebody mentioned
> chromium) you could replace it with a symlink to
> /var/lib/dbus/machine-id.
> 
> I guess replacing /etc/machine-id every 10 minutes [...]



Hi

I am using ASCII, migrated from Jessie, migrated from Debian (maybe but
I do not remember)...

Unitil I will migrate to Beowulf, I guess adopt this proposed solution:

1) symlink /etc/machine-id  to  /var/lib/dbus/machine-id

2) run boot:  echo date +%s%N | md5sum | cut -c 1-32 > /var/lib/dbus/machine-id

So please help me: what is the right way to run the previous command at
each boot?


Another point... I have:

$ hostid
007f0101 

What the best to do about this? Keep this value? Change it to what else? ...

Thank you
Regards


-- 
al3xu5 / dotcommon
Say NO to copyright, patents, trademarks and any industrial design restrictions.
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng